UNPKG

@ant-design/react-native

Version:

基于蚂蚁金服移动设计规范的 React Native 组件库

169 lines (146 loc) 7.9 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _typeof2 = require('babel-runtime/helpers/typeof'); var _typeof3 = _interopRequireDefault(_typeof2); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); 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 _react2 = _interopRequireDefault(_react); var _reactNative = require('react-native'); var _icon = require('../icon'); var _icon2 = _interopRequireDefault(_icon); var _style = require('../style'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; } /* tslint:disable: jsx-no-multiline-js */ var StepsItem = function (_React$Component) { (0, _inherits3['default'])(StepsItem, _React$Component); function StepsItem() { (0, _classCallCheck3['default'])(this, StepsItem); return (0, _possibleConstructorReturn3['default'])(this, (StepsItem.__proto__ || Object.getPrototypeOf(StepsItem)).apply(this, arguments)); } (0, _createClass3['default'])(StepsItem, [{ key: 'render', value: function render() { var _props = this.props, size = _props.size, last = _props.last, title = _props.title, description = _props.description, direction = _props.direction, status = _props.status, icon = _props.icon, styles = _props.styles, renderIcon = _props.renderIcon; var index = this.props.index; var current = this.props.current; var errorTail = this.props.errorTail; var starting = index < current || status === 'finish' || index === current || status === 'process'; var waiting = index > current || status === 'wait'; var error = status === 'error'; return _react2['default'].createElement( _style.WithTheme, null, function (_, theme) { var headCls = ''; var tailTopCls = ''; var tailBottomCls = ''; var sizeCls = size === 'small' ? '_s' : '_l'; if (index < current || status === 'finish') { headCls = 'head_blue' + sizeCls; tailTopCls = 'tail_blue'; tailBottomCls = 'tail_blue'; } else if (index === current || status === 'process') { headCls = 'head_blue' + sizeCls; tailTopCls = 'tail_blue'; tailBottomCls = 'tail_gray'; } else if (index > current || status === 'wait') { headCls = 'head_gray' + sizeCls; tailTopCls = 'tail_gray'; tailBottomCls = 'tail_gray'; } else if (status === '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 (renderIcon) { iconSource = renderIcon({ starting: starting, waiting: waiting, error: error }); } else { if (starting) { iconSource = _react2['default'].createElement(_icon2['default'], { name: 'check', color: theme.color_icon_base, style: styles['icon' + sizeCls] }); } else if (waiting) { iconSource = _react2['default'].createElement(_icon2['default'], { name: 'ellipsis', color: theme.color_icon_base, style: styles['icon' + sizeCls] }); if (!!icon) { iconSource = icon; } } else if (error) { iconSource = _react2['default'].createElement(_icon2['default'], { name: 'close', color: theme.color_icon_base, style: styles['icon' + sizeCls] }); } } var isHorizontal = direction === 'horizontal'; var parentStyle = isHorizontal ? { flexDirection: 'column' } : { flexDirection: 'row' }; var childStyle = isHorizontal ? { flexDirection: 'row', flex: 1 } : { flexDirection: 'column' }; var styleSuffix = ''; if (isHorizontal) { styleSuffix = '_h'; } return _react2['default'].createElement( _reactNative.View, { style: parentStyle }, _react2['default'].createElement( _reactNative.View, { style: childStyle }, _react2['default'].createElement( _reactNative.View, { style: [styles['head_default' + sizeCls], styles[headCls]] }, _react2['default'].isValidElement(iconSource) ? iconSource : null ), _react2['default'].createElement(_reactNative.View, { style: [styles['tail_default' + sizeCls + styleSuffix], styles[tailTopCls]] }), _react2['default'].createElement(_reactNative.View, { style: [styles['tail_default' + sizeCls + styleSuffix], styles[tailBottomCls]] }) ), _react2['default'].createElement( _reactNative.View, { style: styles['content' + sizeCls + styleSuffix] }, (typeof title === 'undefined' ? 'undefined' : (0, _typeof3['default'])(title)) !== 'object' ? _react2['default'].createElement( _reactNative.Text, { style: [styles['title' + sizeCls]] }, title ) : _react2['default'].createElement( _reactNative.View, null, title ), (typeof description === 'undefined' ? 'undefined' : (0, _typeof3['default'])(description)) !== 'object' ? _react2['default'].createElement( _reactNative.Text, { style: [styles['description' + sizeCls]] }, description ) : _react2['default'].createElement( _reactNative.View, null, description ) ) ); } ); } }]); return StepsItem; }(_react2['default'].Component); exports['default'] = StepsItem; module.exports = exports['default'];