@douyinfe/semi-ui 2.33.0 → 2.34.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/css/semi.css +493 -23
- package/dist/css/semi.min.css +1 -1
- package/dist/umd/semi-ui.js +3604 -3474
- package/dist/umd/semi-ui.js.map +1 -1
- package/dist/umd/semi-ui.min.js +1 -1
- package/dist/umd/semi-ui.min.js.map +1 -1
- package/lib/cjs/_utils/index.d.ts +1 -1
- package/lib/cjs/button/index.d.ts +1 -1
- package/lib/cjs/input/index.d.ts +1 -1
- package/lib/cjs/input/index.js +1 -1
- package/lib/cjs/navigation/Item.d.ts +4 -0
- package/lib/cjs/navigation/Item.js +29 -10
- package/lib/cjs/navigation/SubNav.d.ts +5 -0
- package/lib/cjs/navigation/SubNav.js +51 -26
- package/lib/cjs/skeleton/index.d.ts +1 -0
- package/lib/cjs/skeleton/index.js +1 -0
- package/lib/cjs/skeleton/item.d.ts +1 -0
- package/lib/cjs/skeleton/item.js +6 -1
- package/lib/cjs/steps/basicStep.d.ts +3 -0
- package/lib/cjs/steps/basicStep.js +8 -2
- package/lib/cjs/steps/basicSteps.js +2 -1
- package/lib/cjs/steps/fillStep.d.ts +2 -0
- package/lib/cjs/steps/fillStep.js +3 -1
- package/lib/cjs/steps/fillSteps.js +5 -8
- package/lib/cjs/steps/index.d.ts +63 -1
- package/lib/cjs/steps/index.js +9 -0
- package/lib/cjs/steps/navStep.d.ts +3 -0
- package/lib/cjs/steps/navStep.js +6 -2
- package/lib/cjs/steps/navSteps.js +2 -1
- package/lib/cjs/steps/step.d.ts +4 -1
- package/lib/cjs/steps/step.js +1 -0
- package/lib/cjs/table/Body/BaseRow.js +1 -1
- package/lib/cjs/timeline/context.d.ts +8 -0
- package/lib/cjs/timeline/context.js +15 -0
- package/lib/cjs/timeline/index.d.ts +2 -1
- package/lib/cjs/timeline/index.js +8 -2
- package/lib/cjs/timeline/item.d.ts +10 -0
- package/lib/cjs/timeline/item.js +42 -3
- package/lib/cjs/tooltip/index.d.ts +2 -0
- package/lib/cjs/tooltip/index.js +14 -0
- package/lib/es/_utils/index.d.ts +1 -1
- package/lib/es/button/index.d.ts +1 -1
- package/lib/es/input/index.d.ts +1 -1
- package/lib/es/input/index.js +1 -1
- package/lib/es/navigation/Item.d.ts +4 -0
- package/lib/es/navigation/Item.js +28 -10
- package/lib/es/navigation/SubNav.d.ts +5 -0
- package/lib/es/navigation/SubNav.js +52 -26
- package/lib/es/skeleton/index.d.ts +1 -0
- package/lib/es/skeleton/index.js +1 -0
- package/lib/es/skeleton/item.d.ts +1 -0
- package/lib/es/skeleton/item.js +6 -1
- package/lib/es/steps/basicStep.d.ts +3 -0
- package/lib/es/steps/basicStep.js +8 -2
- package/lib/es/steps/basicSteps.js +2 -1
- package/lib/es/steps/fillStep.d.ts +2 -0
- package/lib/es/steps/fillStep.js +3 -1
- package/lib/es/steps/fillSteps.js +6 -8
- package/lib/es/steps/index.d.ts +63 -1
- package/lib/es/steps/index.js +6 -0
- package/lib/es/steps/navStep.d.ts +3 -0
- package/lib/es/steps/navStep.js +6 -2
- package/lib/es/steps/navSteps.js +2 -1
- package/lib/es/steps/step.d.ts +4 -1
- package/lib/es/steps/step.js +1 -0
- package/lib/es/table/Body/BaseRow.js +1 -1
- package/lib/es/timeline/context.d.ts +8 -0
- package/lib/es/timeline/context.js +3 -0
- package/lib/es/timeline/index.d.ts +2 -1
- package/lib/es/timeline/index.js +7 -2
- package/lib/es/timeline/item.d.ts +10 -0
- package/lib/es/timeline/item.js +41 -3
- package/lib/es/tooltip/index.d.ts +2 -0
- package/lib/es/tooltip/index.js +14 -0
- package/package.json +8 -8
|
@@ -5,7 +5,7 @@ import React from 'react';
|
|
|
5
5
|
* @param {React.MouseEvent<HTMLElement>} e React mouse event object
|
|
6
6
|
* @param {boolean} noImmediate Skip stopping immediate propagation
|
|
7
7
|
*/
|
|
8
|
-
export declare function stopPropagation(e: React.MouseEvent
|
|
8
|
+
export declare function stopPropagation(e: React.MouseEvent | React.FocusEvent<HTMLElement>, noImmediate?: boolean): void;
|
|
9
9
|
/**
|
|
10
10
|
* use in Table, Form, Navigation
|
|
11
11
|
*
|
|
@@ -32,7 +32,7 @@ declare class Button extends React.PureComponent<ButtonProps> {
|
|
|
32
32
|
'aria-label': import("prop-types").Requireable<string>;
|
|
33
33
|
};
|
|
34
34
|
static elementType: string;
|
|
35
|
-
constructor(props?:
|
|
35
|
+
constructor(props?: ButtonProps);
|
|
36
36
|
render(): JSX.Element;
|
|
37
37
|
}
|
|
38
38
|
export default Button;
|
package/lib/cjs/input/index.d.ts
CHANGED
|
@@ -126,7 +126,7 @@ declare class Input extends BaseComponent<InputProps, InputState> {
|
|
|
126
126
|
onKeyPress: (...args: any[]) => void;
|
|
127
127
|
onEnterPress: (...args: any[]) => void;
|
|
128
128
|
validateStatus: string;
|
|
129
|
-
|
|
129
|
+
borderless: boolean;
|
|
130
130
|
};
|
|
131
131
|
inputRef: React.RefObject<HTMLInputElement>;
|
|
132
132
|
prefixRef: React.RefObject<React.ReactNode>;
|
package/lib/cjs/input/index.js
CHANGED
|
@@ -549,7 +549,7 @@ Input.defaultProps = {
|
|
|
549
549
|
onKeyPress: _noop2.default,
|
|
550
550
|
onEnterPress: _noop2.default,
|
|
551
551
|
validateStatus: 'default',
|
|
552
|
-
|
|
552
|
+
borderless: false
|
|
553
553
|
};
|
|
554
554
|
|
|
555
555
|
const ForwardInput = /*#__PURE__*/_react.default.forwardRef((props, ref) => /*#__PURE__*/_react.default.createElement(Input, Object.assign({}, props, {
|
|
@@ -19,6 +19,9 @@ export interface NavItemProps extends ItemProps, BaseProps {
|
|
|
19
19
|
onClick?(clickItems: SelectedData): void;
|
|
20
20
|
onMouseEnter?: React.MouseEventHandler<HTMLLIElement>;
|
|
21
21
|
onMouseLeave?: React.MouseEventHandler<HTMLLIElement>;
|
|
22
|
+
selected?: boolean;
|
|
23
|
+
mode?: string;
|
|
24
|
+
isInSubNav?: boolean;
|
|
22
25
|
}
|
|
23
26
|
export interface SelectedData extends SelectedItemProps<NavItemProps> {
|
|
24
27
|
text?: React.ReactNode;
|
|
@@ -28,6 +31,7 @@ export interface NavItemState {
|
|
|
28
31
|
}
|
|
29
32
|
export default class NavItem extends BaseComponent<NavItemProps, NavItemState> {
|
|
30
33
|
static contextType: React.Context<NavContextType>;
|
|
34
|
+
static elementType: string;
|
|
31
35
|
static propTypes: {
|
|
32
36
|
text: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
|
|
33
37
|
itemKey: PropTypes.Requireable<NonNullable<string | number>>;
|
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
+
var _isUndefined2 = _interopRequireDefault(require("lodash/isUndefined"));
|
|
9
|
+
|
|
8
10
|
var _times2 = _interopRequireDefault(require("lodash/times"));
|
|
9
11
|
|
|
10
12
|
var _noop2 = _interopRequireDefault(require("lodash/noop"));
|
|
@@ -121,21 +123,28 @@ class NavItem extends _baseComponent.default {
|
|
|
121
123
|
notifyMouseLeave: function () {
|
|
122
124
|
return _this.props.onMouseLeave(...arguments);
|
|
123
125
|
},
|
|
124
|
-
getIsCollapsed: () => this.props.isCollapsed || Boolean(this.context && this.context.isCollapsed)
|
|
125
|
-
getSelected: () => Boolean(this.context && this.context.selectedKeys && this.context.selectedKeys.includes(this.props.itemKey)),
|
|
126
|
-
getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(this.props.itemKey))
|
|
126
|
+
getIsCollapsed: () => this.props.isCollapsed || Boolean(this.context && this.context.isCollapsed),
|
|
127
|
+
getSelected: () => this.props.selected || Boolean(this.context && this.context.selectedKeys && this.context.selectedKeys.includes(this.props.itemKey)),
|
|
128
|
+
getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(this.props.itemKey)),
|
|
129
|
+
getIsInSubNav: () => this.props.isInSubNav || Boolean(this.context && this.context.isInSubNav),
|
|
130
|
+
getMode: () => {
|
|
131
|
+
var _a, _b;
|
|
132
|
+
|
|
133
|
+
return (_a = this.props.mode) !== null && _a !== void 0 ? _a : (_b = this.context) === null || _b === void 0 ? void 0 : _b.mode;
|
|
134
|
+
}
|
|
127
135
|
});
|
|
128
136
|
}
|
|
129
137
|
|
|
130
138
|
renderIcon(icon, pos) {
|
|
131
139
|
let isToggleIcon = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
132
140
|
let key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
141
|
+
const mode = this.adapter.getMode();
|
|
133
142
|
|
|
134
143
|
if (this.props.isSubNav) {
|
|
135
144
|
return null;
|
|
136
145
|
}
|
|
137
146
|
|
|
138
|
-
if (!icon &&
|
|
147
|
+
if (!icon && mode === _constants.strings.MODE_HORIZONTAL) {
|
|
139
148
|
return null;
|
|
140
149
|
}
|
|
141
150
|
|
|
@@ -158,6 +167,8 @@ class NavItem extends _baseComponent.default {
|
|
|
158
167
|
}
|
|
159
168
|
|
|
160
169
|
render() {
|
|
170
|
+
var _a;
|
|
171
|
+
|
|
161
172
|
const {
|
|
162
173
|
text,
|
|
163
174
|
children,
|
|
@@ -173,16 +184,17 @@ class NavItem extends _baseComponent.default {
|
|
|
173
184
|
linkOptions,
|
|
174
185
|
disabled,
|
|
175
186
|
level = 0,
|
|
176
|
-
tabIndex
|
|
187
|
+
tabIndex,
|
|
188
|
+
mode: modeInProps
|
|
177
189
|
} = this.props;
|
|
178
190
|
const {
|
|
179
|
-
mode,
|
|
180
|
-
isInSubNav,
|
|
181
191
|
prefixCls,
|
|
182
192
|
limitIndent
|
|
183
193
|
} = this.context;
|
|
184
194
|
const isCollapsed = this.adapter.getIsCollapsed();
|
|
185
195
|
const selected = this.adapter.getSelected();
|
|
196
|
+
const isInSubNav = this.adapter.getIsInSubNav();
|
|
197
|
+
const mode = this.adapter.getMode();
|
|
186
198
|
let itemChildren = null;
|
|
187
199
|
|
|
188
200
|
if (!(0, _isNullOrUndefined.default)(children)) {
|
|
@@ -230,14 +242,20 @@ class NavItem extends _baseComponent.default {
|
|
|
230
242
|
onKeyDown: this.handleKeyPress
|
|
231
243
|
}, itemChildren);
|
|
232
244
|
} else {
|
|
233
|
-
//
|
|
245
|
+
// isFirstLayer 用于决定 semi-navigation-first-layers(仅在 c2中使用) 是否生效
|
|
246
|
+
// 当 this.props.isInSubNav 存在是,则由 this.props.isInSubNav 决定
|
|
247
|
+
// 否则由 this.context?.mode 决定,因为第一层节点无context
|
|
248
|
+
const isFirstLayer = !(0, _isUndefined2.default)(this.props.isInSubNav) ? !this.props.isInSubNav : (0, _isUndefined2.default)((_a = this.context) === null || _a === void 0 ? void 0 : _a.mode); // Items are divided into normal and sub-wrap
|
|
249
|
+
|
|
234
250
|
const popoverItemCls = (0, _classnames.default)(`${className || `${clsPrefix}-normal`}`, {
|
|
235
251
|
[clsPrefix]: true,
|
|
236
252
|
[`${clsPrefix}-sub`]: isSubNav,
|
|
237
253
|
[`${clsPrefix}-selected`]: selected && !isSubNav,
|
|
238
254
|
[`${clsPrefix}-collapsed`]: isCollapsed,
|
|
239
255
|
[`${clsPrefix}-disabled`]: disabled,
|
|
240
|
-
[`${clsPrefix}-has-link`]: typeof link === 'string'
|
|
256
|
+
[`${clsPrefix}-has-link`]: typeof link === 'string',
|
|
257
|
+
[`${_constants.cssClasses.PREFIX}-first-layer`]: isFirstLayer,
|
|
258
|
+
[`${clsPrefix}-horizontal`]: modeInProps === _constants.strings.MODE_HORIZONTAL
|
|
241
259
|
});
|
|
242
260
|
const ariaProps = {
|
|
243
261
|
'aria-disabled': disabled
|
|
@@ -317,4 +335,5 @@ NavItem.defaultProps = {
|
|
|
317
335
|
onMouseLeave: _noop2.default,
|
|
318
336
|
disabled: false,
|
|
319
337
|
tabIndex: 0
|
|
320
|
-
};
|
|
338
|
+
};
|
|
339
|
+
NavItem.elementType = 'Nav.Item';
|
|
@@ -22,11 +22,14 @@ export interface SubNavProps extends BaseProps {
|
|
|
22
22
|
onMouseLeave?: React.MouseEventHandler<HTMLLIElement>;
|
|
23
23
|
text?: React.ReactNode;
|
|
24
24
|
toggleIcon?: ToggleIcon;
|
|
25
|
+
active?: boolean;
|
|
26
|
+
mode?: string;
|
|
25
27
|
}
|
|
26
28
|
export interface SubNavState {
|
|
27
29
|
isHovered: boolean;
|
|
28
30
|
}
|
|
29
31
|
export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
|
|
32
|
+
static elementType: string;
|
|
30
33
|
static contextType: React.Context<NavContextType>;
|
|
31
34
|
static propTypes: {
|
|
32
35
|
/**
|
|
@@ -70,6 +73,7 @@ export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
|
|
|
70
73
|
onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
|
|
71
74
|
disabled: PropTypes.Requireable<boolean>;
|
|
72
75
|
level: PropTypes.Requireable<number>;
|
|
76
|
+
active: PropTypes.Requireable<boolean>;
|
|
73
77
|
};
|
|
74
78
|
static defaultProps: {
|
|
75
79
|
level: number;
|
|
@@ -82,6 +86,7 @@ export default class SubNav extends BaseComponent<SubNavProps, SubNavState> {
|
|
|
82
86
|
closed: JSX.Element;
|
|
83
87
|
};
|
|
84
88
|
disabled: boolean;
|
|
89
|
+
active: boolean;
|
|
85
90
|
};
|
|
86
91
|
titleRef: React.RefObject<HTMLDivElement>;
|
|
87
92
|
itemRef: React.RefObject<HTMLLIElement>;
|
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
|
|
8
|
+
var _isUndefined2 = _interopRequireDefault(require("lodash/isUndefined"));
|
|
9
|
+
|
|
8
10
|
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
9
11
|
|
|
10
12
|
var _times2 = _interopRequireDefault(require("lodash/times"));
|
|
@@ -129,16 +131,29 @@ class SubNav extends _baseComponent.default {
|
|
|
129
131
|
|
|
130
132
|
return _this._invokeContextFunc('onClick', ...args);
|
|
131
133
|
},
|
|
132
|
-
getIsSelected: itemKey => Boolean(!(0, _isNullOrUndefined.default)(itemKey) && (0, _get2.default)(this.context, 'selectedKeys', []).includes(String(itemKey))),
|
|
133
|
-
getIsOpen: () => Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(String(this.props.itemKey)))
|
|
134
|
+
getIsSelected: itemKey => this.props.active || Boolean(!(0, _isNullOrUndefined.default)(itemKey) && (0, _get2.default)(this.context, 'selectedKeys', []).includes(String(itemKey))),
|
|
135
|
+
getIsOpen: () => this.props.isOpen || Boolean(this.context && this.context.openKeys && this.context.openKeys.includes(String(this.props.itemKey))),
|
|
136
|
+
getIsCollapsed: () => {
|
|
137
|
+
var _a;
|
|
138
|
+
|
|
139
|
+
return this.props.isCollapsed || Boolean((_a = this.context) === null || _a === void 0 ? void 0 : _a.isCollapsed);
|
|
140
|
+
},
|
|
141
|
+
getMode: () => {
|
|
142
|
+
var _a, _b;
|
|
143
|
+
|
|
144
|
+
return (_a = this.props.mode) !== null && _a !== void 0 ? _a : (_b = this.context) === null || _b === void 0 ? void 0 : _b.mode;
|
|
145
|
+
}
|
|
134
146
|
});
|
|
135
147
|
}
|
|
136
148
|
|
|
137
149
|
renderIcon(icon, pos, withTransition) {
|
|
138
150
|
let isToggleIcon = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
139
151
|
let key = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
152
|
+
|
|
153
|
+
var _a;
|
|
154
|
+
|
|
140
155
|
const {
|
|
141
|
-
prefixCls
|
|
156
|
+
prefixCls = _constants.cssClasses.PREFIX
|
|
142
157
|
} = this.context;
|
|
143
158
|
let iconSize = 'large';
|
|
144
159
|
|
|
@@ -146,14 +161,15 @@ class SubNav extends _baseComponent.default {
|
|
|
146
161
|
iconSize = 'default';
|
|
147
162
|
}
|
|
148
163
|
|
|
164
|
+
const isOpen = this.adapter.getIsOpen();
|
|
149
165
|
const className = (0, _classnames.default)(`${prefixCls}-item-icon`, {
|
|
150
|
-
[`${prefixCls}-item-icon-toggle-${this.context.toggleIconPosition}`]: isToggleIcon,
|
|
151
|
-
[`${prefixCls}-item-icon-info`]: !isToggleIcon
|
|
166
|
+
[`${prefixCls}-item-icon-toggle-${(_a = this.context.toggleIconPosition) !== null && _a !== void 0 ? _a : 'right'}`]: isToggleIcon,
|
|
167
|
+
[`${prefixCls}-item-icon-info`]: !isToggleIcon,
|
|
168
|
+
[`${prefixCls}-icon-rotate-${isOpen ? "180" : "0"}-no-transition`]: !withTransition && isToggleIcon
|
|
152
169
|
});
|
|
153
|
-
const isOpen = this.adapter.getIsOpen();
|
|
154
170
|
const iconElem = /*#__PURE__*/_react.default.isValidElement(icon) ? withTransition ? /*#__PURE__*/_react.default.createElement(_cssAnimation.default, {
|
|
155
171
|
animationState: isOpen ? "enter" : "leave",
|
|
156
|
-
startClassName: `${
|
|
172
|
+
startClassName: `${prefixCls}-icon-rotate-${isOpen ? "180" : "0"}`
|
|
157
173
|
}, _ref => {
|
|
158
174
|
let {
|
|
159
175
|
animationClassName
|
|
@@ -183,17 +199,20 @@ class SubNav extends _baseComponent.default {
|
|
|
183
199
|
level
|
|
184
200
|
} = this.props;
|
|
185
201
|
const {
|
|
186
|
-
mode,
|
|
187
202
|
isInSubNav,
|
|
188
|
-
|
|
189
|
-
prefixCls,
|
|
203
|
+
prefixCls = _constants.cssClasses.PREFIX,
|
|
190
204
|
subNavMotion,
|
|
191
205
|
limitIndent
|
|
192
206
|
} = this.context;
|
|
207
|
+
const isFirstLayer = (0, _isUndefined2.default)(this.context.mode);
|
|
208
|
+
const mode = this.adapter.getMode();
|
|
193
209
|
const isOpen = this.adapter.getIsOpen();
|
|
210
|
+
const isCollapsed = this.adapter.getIsCollapsed();
|
|
194
211
|
const titleCls = (0, _classnames.default)(`${prefixCls}-sub-title`, {
|
|
195
212
|
[`${prefixCls}-sub-title-selected`]: this.adapter.getIsSelected(itemKey),
|
|
196
|
-
[`${prefixCls}-sub-title-disabled`]: disabled
|
|
213
|
+
[`${prefixCls}-sub-title-disabled`]: disabled,
|
|
214
|
+
[`${prefixCls}-first-layer`]: isFirstLayer,
|
|
215
|
+
[`${prefixCls}-sub-title-horizontal`]: mode === _constants.strings.MODE_HORIZONTAL
|
|
197
216
|
});
|
|
198
217
|
let withTransition = false;
|
|
199
218
|
let toggleIconType = '';
|
|
@@ -234,6 +253,7 @@ class SubNav extends _baseComponent.default {
|
|
|
234
253
|
}
|
|
235
254
|
|
|
236
255
|
const isIconChevronRightShow = !isCollapsed && isInSubNav && mode === _constants.strings.MODE_HORIZONTAL || isCollapsed && isInSubNav;
|
|
256
|
+
const toggleIconPositionLeft = this.context.toggleIconPosition === _constants.strings.TOGGLE_ICON_LEFT;
|
|
237
257
|
|
|
238
258
|
const titleDiv = /*#__PURE__*/_react.default.createElement("div", {
|
|
239
259
|
role: "menuitem",
|
|
@@ -246,9 +266,9 @@ class SubNav extends _baseComponent.default {
|
|
|
246
266
|
"aria-expanded": isOpen ? 'true' : 'false'
|
|
247
267
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
248
268
|
className: `${prefixCls}-item-inner`
|
|
249
|
-
}, placeholderIcons,
|
|
269
|
+
}, placeholderIcons, toggleIconPositionLeft && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-left'), icon || indent || isInSubNav && mode !== _constants.strings.MODE_HORIZONTAL ? this.renderIcon(icon, _constants.strings.ICON_POS_LEFT, false, false, 'key-inSubNav-position-left') : null, /*#__PURE__*/_react.default.createElement("span", {
|
|
250
270
|
className: `${prefixCls}-item-text`
|
|
251
|
-
}, text),
|
|
271
|
+
}, text), !toggleIconPositionLeft && this.renderIcon(toggleIconType, _constants.strings.ICON_POS_RIGHT, withTransition, true, 'key-toggle-position-right')));
|
|
252
272
|
|
|
253
273
|
return titleDiv;
|
|
254
274
|
}
|
|
@@ -259,12 +279,12 @@ class SubNav extends _baseComponent.default {
|
|
|
259
279
|
maxHeight
|
|
260
280
|
} = this.props;
|
|
261
281
|
const {
|
|
262
|
-
isCollapsed,
|
|
263
|
-
mode,
|
|
264
282
|
subNavMotion,
|
|
265
|
-
prefixCls
|
|
283
|
+
prefixCls = _constants.cssClasses.PREFIX
|
|
266
284
|
} = this.context;
|
|
285
|
+
const isCollapsed = this.adapter.getIsCollapsed();
|
|
267
286
|
const isOpen = this.adapter.getIsOpen();
|
|
287
|
+
const mode = this.adapter.getMode();
|
|
268
288
|
const isHorizontal = mode === _constants.strings.MODE_HORIZONTAL;
|
|
269
289
|
const subNavCls = (0, _classnames.default)(`${prefixCls}-sub`, {
|
|
270
290
|
[`${prefixCls}-sub-open`]: isOpen,
|
|
@@ -295,14 +315,14 @@ class SubNav extends _baseComponent.default {
|
|
|
295
315
|
disabled
|
|
296
316
|
} = this.props;
|
|
297
317
|
const {
|
|
298
|
-
mode,
|
|
299
318
|
isInSubNav,
|
|
300
|
-
isCollapsed,
|
|
301
319
|
subNavCloseDelay,
|
|
302
320
|
subNavOpenDelay,
|
|
303
|
-
prefixCls,
|
|
321
|
+
prefixCls = _constants.cssClasses.PREFIX,
|
|
304
322
|
getPopupContainer
|
|
305
323
|
} = this.context;
|
|
324
|
+
const isCollapsed = this.adapter.getIsCollapsed();
|
|
325
|
+
const mode = this.adapter.getMode();
|
|
306
326
|
const isOpen = this.adapter.getIsOpen();
|
|
307
327
|
const openKeysIsControlled = this.adapter.getOpenKeysIsControlled();
|
|
308
328
|
const subNavCls = (0, _classnames.default)({
|
|
@@ -347,10 +367,10 @@ class SubNav extends _baseComponent.default {
|
|
|
347
367
|
text
|
|
348
368
|
} = this.props;
|
|
349
369
|
const {
|
|
350
|
-
|
|
351
|
-
isCollapsed,
|
|
352
|
-
prefixCls
|
|
370
|
+
prefixCls = _constants.cssClasses.PREFIX
|
|
353
371
|
} = this.context;
|
|
372
|
+
const mode = this.adapter.getMode();
|
|
373
|
+
const isCollapsed = this.adapter.getIsCollapsed();
|
|
354
374
|
let titleDiv = this.renderTitleDiv();
|
|
355
375
|
const subUl = this.renderSubUl(); // When mode=horizontal, it is displayed in Dropdown
|
|
356
376
|
|
|
@@ -368,9 +388,11 @@ class SubNav extends _baseComponent.default {
|
|
|
368
388
|
onMouseEnter: onMouseEnter,
|
|
369
389
|
onMouseLeave: onMouseLeave,
|
|
370
390
|
disabled: disabled,
|
|
371
|
-
text: text
|
|
391
|
+
text: text,
|
|
392
|
+
mode: mode
|
|
372
393
|
}, /*#__PURE__*/_react.default.createElement(_navContext.default.Provider, {
|
|
373
394
|
value: Object.assign(Object.assign({}, this.context), {
|
|
395
|
+
mode: mode,
|
|
374
396
|
isInSubNav: true
|
|
375
397
|
})
|
|
376
398
|
}, titleDiv, subUl));
|
|
@@ -433,7 +455,8 @@ SubNav.propTypes = {
|
|
|
433
455
|
onMouseLeave: _propTypes.default.func,
|
|
434
456
|
// Is it disabled
|
|
435
457
|
disabled: _propTypes.default.bool,
|
|
436
|
-
level: _propTypes.default.number
|
|
458
|
+
level: _propTypes.default.number,
|
|
459
|
+
active: _propTypes.default.bool
|
|
437
460
|
};
|
|
438
461
|
SubNav.defaultProps = {
|
|
439
462
|
level: 0,
|
|
@@ -449,5 +472,7 @@ SubNav.defaultProps = {
|
|
|
449
472
|
"aria-hidden": true
|
|
450
473
|
})
|
|
451
474
|
},
|
|
452
|
-
disabled: false
|
|
453
|
-
|
|
475
|
+
disabled: false,
|
|
476
|
+
active: false
|
|
477
|
+
};
|
|
478
|
+
SubNav.elementType = 'Nav.Sub';
|
|
@@ -12,6 +12,7 @@ export interface SkeletonProps {
|
|
|
12
12
|
style?: CSSProperties;
|
|
13
13
|
}
|
|
14
14
|
declare class Skeleton extends PureComponent<SkeletonProps> {
|
|
15
|
+
static elementType: string;
|
|
15
16
|
static Avatar: React.FC<import("./item").AvatarProps>;
|
|
16
17
|
static Title: React.FC<import("./item").BasicProps>;
|
|
17
18
|
static Button: React.FC<import("./item").BasicProps>;
|
|
@@ -21,6 +21,7 @@ export declare const Image: React.FC<BasicProps>;
|
|
|
21
21
|
export declare const Title: React.FC<BasicProps>;
|
|
22
22
|
export declare const Button: React.FC<BasicProps>;
|
|
23
23
|
export declare class Paragraph extends PureComponent<ParagraphProps> {
|
|
24
|
+
static elementType: string;
|
|
24
25
|
static propTypes: {
|
|
25
26
|
rows: PropTypes.Requireable<number>;
|
|
26
27
|
prefixCls: PropTypes.Requireable<string>;
|
package/lib/cjs/skeleton/item.js
CHANGED
|
@@ -86,6 +86,10 @@ const Title = generator('title')(Generic);
|
|
|
86
86
|
exports.Title = Title;
|
|
87
87
|
const Button = generator('button')(Generic);
|
|
88
88
|
exports.Button = Button;
|
|
89
|
+
Avatar.elementType = 'Skeleton.Avatar';
|
|
90
|
+
Image.elementType = 'Skeleton.Image';
|
|
91
|
+
Title.elementType = 'Skeleton.Title';
|
|
92
|
+
Button.elementType = 'Skeleton.Button';
|
|
89
93
|
|
|
90
94
|
class Paragraph extends _react.PureComponent {
|
|
91
95
|
render() {
|
|
@@ -116,4 +120,5 @@ Paragraph.propTypes = {
|
|
|
116
120
|
Paragraph.defaultProps = {
|
|
117
121
|
prefixCls: _constants.cssClasses.PREFIX,
|
|
118
122
|
rows: 4
|
|
119
|
-
};
|
|
123
|
+
};
|
|
124
|
+
Paragraph.elementType = 'Skeleton.Paragraph';
|
|
@@ -19,6 +19,8 @@ export interface BasicStepProps {
|
|
|
19
19
|
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
20
20
|
"role"?: React.AriaRole;
|
|
21
21
|
"aria-label"?: React.AriaAttributes["aria-label"];
|
|
22
|
+
usedInC2D?: string;
|
|
23
|
+
direction?: string;
|
|
22
24
|
}
|
|
23
25
|
export declare enum stepSizeMapIconSize {
|
|
24
26
|
small = "large",
|
|
@@ -45,5 +47,6 @@ declare const BasicStep: {
|
|
|
45
47
|
status: string;
|
|
46
48
|
className: string;
|
|
47
49
|
};
|
|
50
|
+
elementType: string;
|
|
48
51
|
};
|
|
49
52
|
export default BasicStep;
|
|
@@ -42,7 +42,9 @@ const BasicStep = props => {
|
|
|
42
42
|
stepNumber,
|
|
43
43
|
onClick,
|
|
44
44
|
onChange,
|
|
45
|
-
onKeyDown
|
|
45
|
+
onKeyDown,
|
|
46
|
+
usedInC2D,
|
|
47
|
+
direction: direction
|
|
46
48
|
} = props;
|
|
47
49
|
|
|
48
50
|
const renderIcon = () => {
|
|
@@ -103,7 +105,10 @@ const BasicStep = props => {
|
|
|
103
105
|
|
|
104
106
|
const classString = (0, _classnames.default)(prefixCls, `${prefixCls}-${status}`, {
|
|
105
107
|
[`${prefixCls}-active`]: active,
|
|
106
|
-
[`${prefixCls}-done`]: done
|
|
108
|
+
[`${prefixCls}-done`]: done,
|
|
109
|
+
[`${prefixCls}-basic`]: usedInC2D,
|
|
110
|
+
[`${prefixCls}-${direction}`]: direction,
|
|
111
|
+
[`${prefixCls}-small`]: size === 'small'
|
|
107
112
|
}, className);
|
|
108
113
|
|
|
109
114
|
const handleClick = e => {
|
|
@@ -167,5 +172,6 @@ BasicStep.defaultProps = {
|
|
|
167
172
|
status: 'wait',
|
|
168
173
|
className: ''
|
|
169
174
|
};
|
|
175
|
+
BasicStep.elementType = 'Steps.BasicStep';
|
|
170
176
|
var _default = BasicStep;
|
|
171
177
|
exports.default = _default;
|
|
@@ -15,6 +15,7 @@ export interface FillStepProps {
|
|
|
15
15
|
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
16
16
|
"role"?: React.AriaRole;
|
|
17
17
|
"aria-label"?: React.AriaAttributes["aria-label"];
|
|
18
|
+
usedInC2D?: boolean;
|
|
18
19
|
}
|
|
19
20
|
declare const FillStep: {
|
|
20
21
|
(props: FillStepProps): JSX.Element;
|
|
@@ -33,5 +34,6 @@ declare const FillStep: {
|
|
|
33
34
|
status: string;
|
|
34
35
|
className: string;
|
|
35
36
|
};
|
|
37
|
+
elementType: string;
|
|
36
38
|
};
|
|
37
39
|
export default FillStep;
|
|
@@ -111,7 +111,8 @@ const FillStep = props => {
|
|
|
111
111
|
className: (0, _classnames.default)({
|
|
112
112
|
[prefixCls]: true,
|
|
113
113
|
[`${prefixCls}-${status}`]: Boolean(status),
|
|
114
|
-
[`${prefixCls}-clickable`]: onClick
|
|
114
|
+
[`${prefixCls}-clickable`]: onClick,
|
|
115
|
+
[`${prefixCls}-fill`]: props.usedInC2D
|
|
115
116
|
}, className),
|
|
116
117
|
style: style,
|
|
117
118
|
onClick: e => {
|
|
@@ -146,5 +147,6 @@ FillStep.defaultProps = {
|
|
|
146
147
|
status: 'wait',
|
|
147
148
|
className: ''
|
|
148
149
|
};
|
|
150
|
+
FillStep.elementType = 'Steps.FillStep';
|
|
149
151
|
var _default = FillStep;
|
|
150
152
|
exports.default = _default;
|
|
@@ -34,11 +34,8 @@ const Steps = props => {
|
|
|
34
34
|
onChange
|
|
35
35
|
} = props;
|
|
36
36
|
const inner = (0, _react.useMemo)(() => {
|
|
37
|
-
const filteredChildren = _react.Children.toArray(children).filter(c => /*#__PURE__*/(0, _react.isValidElement)(c));
|
|
37
|
+
const filteredChildren = _react.Children.toArray(children).filter(c => /*#__PURE__*/(0, _react.isValidElement)(c)); // const colStyle = direction === 'vertical' ? null : { width: `${100 / filteredChildren.length }%` };
|
|
38
38
|
|
|
39
|
-
const colStyle = direction === 'vertical' ? null : {
|
|
40
|
-
width: `${100 / filteredChildren.length}%`
|
|
41
|
-
};
|
|
42
39
|
|
|
43
40
|
const content = _react.Children.map(filteredChildren, (child, index) => {
|
|
44
41
|
if (!child) {
|
|
@@ -69,11 +66,11 @@ const Steps = props => {
|
|
|
69
66
|
if (index !== current) {
|
|
70
67
|
onChange(index + initial);
|
|
71
68
|
}
|
|
72
|
-
};
|
|
69
|
+
}; // Whether colStyle is set has no effect
|
|
70
|
+
// return <Col style={colStyle}>{cloneElement(child, { ...childProps })}</Col>;
|
|
73
71
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
}, /*#__PURE__*/(0, _react.cloneElement)(child, Object.assign({}, childProps)));
|
|
72
|
+
|
|
73
|
+
return /*#__PURE__*/_react.default.createElement(_grid.Col, null, /*#__PURE__*/(0, _react.cloneElement)(child, Object.assign({}, childProps)));
|
|
77
74
|
});
|
|
78
75
|
|
|
79
76
|
return content;
|
package/lib/cjs/steps/index.d.ts
CHANGED
|
@@ -22,7 +22,69 @@ export interface NavStepsAllProps extends NavStepsProps {
|
|
|
22
22
|
}
|
|
23
23
|
export declare type StepsProps = FillStepsAllProps | BasicStepsAllProps | NavStepsAllProps;
|
|
24
24
|
declare class Steps extends Component<StepsProps> {
|
|
25
|
-
static Step:
|
|
25
|
+
static Step: {
|
|
26
|
+
(props: import("./step").StepProps): JSX.Element;
|
|
27
|
+
elementType: string;
|
|
28
|
+
};
|
|
29
|
+
static FillStep: {
|
|
30
|
+
(props: import("./fillStep").FillStepProps): JSX.Element;
|
|
31
|
+
propTypes: {
|
|
32
|
+
prefixCls: PropTypes.Requireable<string>;
|
|
33
|
+
description: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
34
|
+
icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
35
|
+
status: PropTypes.Requireable<string>;
|
|
36
|
+
title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
37
|
+
className: PropTypes.Requireable<string>;
|
|
38
|
+
style: PropTypes.Requireable<object>;
|
|
39
|
+
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
40
|
+
};
|
|
41
|
+
defaultProps: {
|
|
42
|
+
prefixCls: string;
|
|
43
|
+
status: string;
|
|
44
|
+
className: string;
|
|
45
|
+
};
|
|
46
|
+
elementType: string;
|
|
47
|
+
};
|
|
48
|
+
static BasicStep: {
|
|
49
|
+
(props: import("./basicStep").BasicStepProps): JSX.Element;
|
|
50
|
+
propTypes: {
|
|
51
|
+
prefixCls: PropTypes.Requireable<string>;
|
|
52
|
+
description: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
53
|
+
icon: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
54
|
+
status: PropTypes.Requireable<string>;
|
|
55
|
+
title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
56
|
+
className: PropTypes.Requireable<string>;
|
|
57
|
+
style: PropTypes.Requireable<object>;
|
|
58
|
+
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
59
|
+
active: PropTypes.Requireable<boolean>;
|
|
60
|
+
done: PropTypes.Requireable<boolean>;
|
|
61
|
+
};
|
|
62
|
+
defaultProps: {
|
|
63
|
+
prefixCls: string;
|
|
64
|
+
active: boolean;
|
|
65
|
+
done: boolean;
|
|
66
|
+
status: string;
|
|
67
|
+
className: string;
|
|
68
|
+
};
|
|
69
|
+
elementType: string;
|
|
70
|
+
};
|
|
71
|
+
static NavStep: {
|
|
72
|
+
(props: import("./navStep").NavStepProps): JSX.Element;
|
|
73
|
+
propTypes: {
|
|
74
|
+
prefixCls: PropTypes.Requireable<string>;
|
|
75
|
+
title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
|
|
76
|
+
className: PropTypes.Requireable<string>;
|
|
77
|
+
style: PropTypes.Requireable<object>;
|
|
78
|
+
onClick: PropTypes.Requireable<(...args: any[]) => any>;
|
|
79
|
+
active: PropTypes.Requireable<boolean>;
|
|
80
|
+
};
|
|
81
|
+
defaultProps: {
|
|
82
|
+
prefixCls: string;
|
|
83
|
+
active: boolean;
|
|
84
|
+
className: string;
|
|
85
|
+
};
|
|
86
|
+
elementType: string;
|
|
87
|
+
};
|
|
26
88
|
static propTypes: {
|
|
27
89
|
onChange: PropTypes.Requireable<(...args: any[]) => any>;
|
|
28
90
|
type: PropTypes.Requireable<string>;
|
package/lib/cjs/steps/index.js
CHANGED
|
@@ -21,6 +21,12 @@ var _basicSteps = _interopRequireDefault(require("./basicSteps"));
|
|
|
21
21
|
|
|
22
22
|
var _navSteps = _interopRequireDefault(require("./navSteps"));
|
|
23
23
|
|
|
24
|
+
var _fillStep = _interopRequireDefault(require("./fillStep"));
|
|
25
|
+
|
|
26
|
+
var _basicStep = _interopRequireDefault(require("./basicStep"));
|
|
27
|
+
|
|
28
|
+
var _navStep = _interopRequireDefault(require("./navStep"));
|
|
29
|
+
|
|
24
30
|
var _context = _interopRequireDefault(require("./context"));
|
|
25
31
|
|
|
26
32
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -77,6 +83,9 @@ class Steps extends _react.Component {
|
|
|
77
83
|
}
|
|
78
84
|
|
|
79
85
|
Steps.Step = _step.default;
|
|
86
|
+
Steps.FillStep = _fillStep.default;
|
|
87
|
+
Steps.BasicStep = _basicStep.default;
|
|
88
|
+
Steps.NavStep = _navStep.default;
|
|
80
89
|
Steps.propTypes = {
|
|
81
90
|
onChange: _propTypes.default.func,
|
|
82
91
|
type: _propTypes.default.oneOf(['fill', 'basic', 'nav']),
|
|
@@ -13,6 +13,8 @@ export interface NavStepProps {
|
|
|
13
13
|
onKeyDown?: React.KeyboardEventHandler<HTMLDivElement>;
|
|
14
14
|
"role"?: React.AriaRole;
|
|
15
15
|
"aria-label"?: React.AriaAttributes["aria-label"];
|
|
16
|
+
usedInC2D?: boolean;
|
|
17
|
+
size?: string;
|
|
16
18
|
}
|
|
17
19
|
declare const NavStep: {
|
|
18
20
|
(props: NavStepProps): JSX.Element;
|
|
@@ -29,5 +31,6 @@ declare const NavStep: {
|
|
|
29
31
|
active: boolean;
|
|
30
32
|
className: string;
|
|
31
33
|
};
|
|
34
|
+
elementType: string;
|
|
32
35
|
};
|
|
33
36
|
export default NavStep;
|