@ucloud-fe/react-components 1.11.1 → 1.12.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.
@@ -31,7 +31,7 @@ var _StepIcon = _interopRequireDefault(require("./StepIcon"));
31
31
 
32
32
  var _style = require("./style");
33
33
 
34
- var _excluded = ["status", "step", "remark", "title"];
34
+ var _excluded = ["status", "step", "remark", "title", "isLast"];
35
35
 
36
36
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
37
 
@@ -59,13 +59,19 @@ var Step = /*#__PURE__*/function (_PureComponent) {
59
59
  step = _this$props.step,
60
60
  remark = _this$props.remark,
61
61
  title = _this$props.title,
62
+ isLast = _this$props.isLast,
62
63
  rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
63
64
  return /*#__PURE__*/_react.default.createElement(_style.StepWrapper, (0, _extends2.default)({
64
- status: status
65
- }, rest), /*#__PURE__*/_react.default.createElement(_StepIcon.default, {
65
+ status: status,
66
+ isLast: isLast
67
+ }, rest, {
68
+ className: "".concat(_style.stepWrapperCls, " ").concat(rest.className ? rest.className : '')
69
+ }), /*#__PURE__*/_react.default.createElement("div", {
70
+ className: _style.itemTailCls
71
+ }), /*#__PURE__*/_react.default.createElement(_StepIcon.default, {
66
72
  status: status,
67
73
  step: step || 0
68
- }), (title || remark) && /*#__PURE__*/_react.default.createElement(_style.ContentWrapper, null, /*#__PURE__*/_react.default.createElement(_style.TitleWrapper, null, title), remark && /*#__PURE__*/_react.default.createElement(_style.RemarkWrapper, null, remark)));
74
+ }), /*#__PURE__*/_react.default.createElement(_style.ContentWrapper, null, /*#__PURE__*/_react.default.createElement(_style.TitleWrapper, null, title), remark && /*#__PURE__*/_react.default.createElement(_style.RemarkWrapper, null, remark)));
69
75
  }
70
76
  }]);
71
77
  return Step;
@@ -76,5 +82,7 @@ Step.propTypes = {
76
82
  status: _propTypes.default.string,
77
83
  step: _propTypes.default.node,
78
84
  remark: _propTypes.default.node,
79
- title: _propTypes.default.node
85
+ title: _propTypes.default.node,
86
+ isLast: _propTypes.default.bool,
87
+ disabled: _propTypes.default.bool
80
88
  };
@@ -99,7 +99,9 @@ var StepIcon = /*#__PURE__*/function (_PureComponent) {
99
99
  rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
100
100
  return /*#__PURE__*/_react.default.createElement(_style.IconWrapper, (0, _extends2.default)({
101
101
  status: status
102
- }, rest), this.renderContent(status, step));
102
+ }, rest, {
103
+ className: "".concat(_style.iconCls, " ").concat(rest.className ? rest.className : '')
104
+ }), this.renderContent(status, step));
103
105
  }
104
106
  }]);
105
107
  return StepIcon;
@@ -33,10 +33,8 @@ var _style = require("./style");
33
33
 
34
34
  var _Step = _interopRequireDefault(require("./Step"));
35
35
 
36
- var _Link = _interopRequireDefault(require("./Link"));
37
-
38
- var _excluded = ["key", "step"],
39
- _excluded2 = ["steps", "current", "status"];
36
+ var _excluded = ["key", "step", "status"],
37
+ _excluded2 = ["steps", "current", "status", "onChange", "direction"];
40
38
 
41
39
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
42
40
 
@@ -66,18 +64,26 @@ var Steps = /*#__PURE__*/function (_Component) {
66
64
 
67
65
  _this = _super.call.apply(_super, [this].concat(args));
68
66
 
69
- _this.renderSteps = function (steps, current, status) {
67
+ _this.renderSteps = function (_ref) {
70
68
  var _this3 = this;
71
69
 
72
70
  (0, _newArrowCheck2.default)(this, _this2);
71
+ var steps = _ref.steps,
72
+ current = _ref.current,
73
+ status = _ref.status,
74
+ direction = _ref.direction,
75
+ onChange = _ref.onChange;
73
76
  var pos = 'before';
74
77
  var l = steps.length;
75
78
  return steps.map(function (step, i) {
79
+ var _this4 = this;
80
+
76
81
  (0, _newArrowCheck2.default)(this, _this3);
77
82
  var _step$key = step.key,
78
83
  key = _step$key === void 0 ? i : _step$key,
79
84
  _step$step = step.step,
80
85
  stepContent = _step$step === void 0 ? i + 1 : _step$step,
86
+ singleStatus = step.status,
81
87
  rest = (0, _objectWithoutProperties2.default)(step, _excluded);
82
88
  var isCurrent = current === key;
83
89
  var finalStatus;
@@ -86,17 +92,46 @@ var Steps = /*#__PURE__*/function (_Component) {
86
92
  pos = 'after';
87
93
  finalStatus = status;
88
94
  } else {
95
+ switch (singleStatus) {
96
+ case 'error':
97
+ pos = 'error';
98
+ break;
99
+
100
+ case 'success':
101
+ pos = 'before';
102
+ break;
103
+
104
+ case 'normal':
105
+ pos = 'after';
106
+ break;
107
+
108
+ default:
109
+ }
110
+
89
111
  finalStatus = pos;
90
112
  }
91
113
 
92
- return [/*#__PURE__*/_react.default.createElement(_Step.default, (0, _extends2.default)({}, rest, {
114
+ var canHover = typeof onChange === 'function' && singleStatus !== 'disabled' ? true : false;
115
+ var showTitle = rest.title ? true : false;
116
+ return /*#__PURE__*/_react.default.createElement(_style.StepsItemWrapper, {
93
117
  key: key,
118
+ direction: direction,
94
119
  status: finalStatus,
95
- step: stepContent
96
- })), i < l - 1 && /*#__PURE__*/_react.default.createElement(_Link.default, {
97
- key: "link-".concat(key),
98
- status: pos
99
- })];
120
+ canHover: canHover,
121
+ showTitle: showTitle,
122
+ onClick: function () {
123
+ (0, _newArrowCheck2.default)(this, _this4);
124
+
125
+ if (canHover) {
126
+ onChange(key, finalStatus);
127
+ }
128
+ }.bind(this)
129
+ }, /*#__PURE__*/_react.default.createElement(_Step.default, (0, _extends2.default)({}, rest, {
130
+ key: "step-".concat(key),
131
+ status: finalStatus,
132
+ step: stepContent,
133
+ isLast: i === l - 1 ? true : false
134
+ })));
100
135
  }.bind(this));
101
136
  }.bind(this);
102
137
 
@@ -110,8 +145,18 @@ var Steps = /*#__PURE__*/function (_Component) {
110
145
  steps = _this$props.steps,
111
146
  current = _this$props.current,
112
147
  status = _this$props.status,
148
+ onChange = _this$props.onChange,
149
+ direction = _this$props.direction,
113
150
  rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded2);
114
- return /*#__PURE__*/_react.default.createElement(_style.StepsWrapper, rest, this.renderSteps(steps, current, status));
151
+ return /*#__PURE__*/_react.default.createElement(_style.StepsWrapper, (0, _extends2.default)({
152
+ direction: direction
153
+ }, rest), this.renderSteps({
154
+ steps: steps,
155
+ current: current,
156
+ status: status,
157
+ direction: direction,
158
+ onChange: onChange
159
+ }));
115
160
  }
116
161
  }]);
117
162
  return Steps;
@@ -130,17 +175,32 @@ Steps.propTypes = {
130
175
  title: _propTypes.default.node,
131
176
 
132
177
  /** 步骤的备注 */
133
- remark: _propTypes.default.node
178
+ remark: _propTypes.default.node,
179
+
180
+ /** 步骤的状态 */
181
+ status: _propTypes.default.oneOf(['disabled', 'error', 'success', 'normal'])
134
182
  })).isRequired,
135
183
 
136
184
  /** 当前步骤的 key,不传或传 null 时为全部完成 */
137
185
  current: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
138
186
 
139
187
  /** 当前步骤的状态 */
140
- status: _propTypes.default.oneOf(Status)
188
+ status: _propTypes.default.oneOf(Status),
189
+
190
+ /**
191
+ * 步骤状态改变时的回调函数
192
+ * @param {number} current 当前步骤的key
193
+ */
194
+ onChange: _propTypes.default.func,
195
+
196
+ /**
197
+ * 指定步骤条方向 , 默认是horizontal
198
+ */
199
+ direction: _propTypes.default.oneOf(['horizontal', 'vertical'])
141
200
  };
142
201
  Steps.defaultProps = {
143
- status: 'current'
202
+ status: 'current',
203
+ direction: 'horizontal'
144
204
  };
145
205
  var _default = Steps;
146
206
  exports.default = _default;