UNPKG

antd-mobile

Version:

基于 React 的移动设计规范实现

143 lines (123 loc) 5.67 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = undefined; var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _react = require('react'); var React = _interopRequireWildcard(_react); var _reactNative = require('react-native'); var _style = require('./style'); var _style2 = _interopRequireDefault(_style); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj["default"] = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var StepsItem = function (_React$Component) { (0, _inherits3["default"])(StepsItem, _React$Component); function StepsItem() { (0, _classCallCheck3["default"])(this, StepsItem); return (0, _possibleConstructorReturn3["default"])(this, _React$Component.apply(this, arguments)); } StepsItem.prototype.render = function render() { var _props = this.props; var size = _props.size; var current = _props.current; var index = _props.index; var last = _props.last; var title = _props.title; var description = _props.description; var status = _props.status; var errorTail = _props.errorTail; var icon = _props.icon; var iconImg = void 0; var headCls = void 0; var tailTopCls = void 0; var tailBottomCls = void 0; var sizeCls = size === 'small' ? '_s' : '_l'; if (index < current || status === 'finish') { iconImg = 'check'; headCls = 'head_blue' + sizeCls; tailTopCls = 'tail_blue'; tailBottomCls = 'tail_blue'; } else if (index === current || status === 'process') { iconImg = 'check'; headCls = 'head_blue' + sizeCls; tailTopCls = 'tail_blue'; tailBottomCls = 'tail_gray'; } else if (index > current || status === 'wait') { iconImg = 'more'; headCls = 'head_gray' + sizeCls; tailTopCls = 'tail_gray'; tailBottomCls = 'tail_gray'; } else if (status === 'error') { iconImg = 'error'; headCls = 'head_red' + sizeCls; tailTopCls = 'tail_gray'; tailBottomCls = 'tail_gray'; } if (last) { tailTopCls = 'tail_last'; tailBottomCls = 'tail_last'; } if (errorTail > -1) { tailBottomCls = 'tail_error'; } var iconSource = void 0; if (size === 'small') { if (index < current || status === 'finish' || index === current || status === 'process') { iconSource = require('../style/images/check.png'); } else if (index > current || status === 'wait') { iconSource = require('../style/images/more.png'); } else if (status === 'error') { iconSource = require('../style/images/cross.png'); } } else { if (index < current || status === 'finish' || index === current || status === 'process') { iconSource = require('../style/images/check_w.png'); } else if (index > current || status === 'wait') { iconSource = require('../style/images/more_w.png'); if (!!icon) { iconSource = icon; } } else if (status === 'error') { iconSource = require('../style/images/cross_w.png'); } } return React.createElement( _reactNative.View, { style: { flex: 1, flexDirection: 'row' } }, React.createElement( _reactNative.View, { style: { flexDirection: 'column' } }, React.createElement( _reactNative.View, { style: [_style2["default"]['head_default' + sizeCls], _style2["default"][headCls]] }, React.createElement(_reactNative.Image, { source: iconSource, style: _style2["default"]['icon' + sizeCls] }) ), React.createElement(_reactNative.View, { style: [_style2["default"]['tail_default' + sizeCls], _style2["default"][tailTopCls]] }), React.createElement(_reactNative.View, { style: [_style2["default"]['tail_default' + sizeCls], _style2["default"][tailBottomCls]] }) ), React.createElement( _reactNative.View, { style: _style2["default"]['content' + sizeCls] }, React.createElement( _reactNative.Text, { style: [_style2["default"]['title' + sizeCls]] }, title ), React.createElement( _reactNative.Text, { style: [_style2["default"]['description' + sizeCls]] }, description ) ) ); }; return StepsItem; }(React.Component); exports["default"] = StepsItem; module.exports = exports['default'];