UNPKG

modo-mobile

Version:

A mobile UI toolkit, based on React

71 lines (62 loc) 2.75 kB
import _defineProperty from 'babel-runtime/helpers/defineProperty'; import _classCallCheck from 'babel-runtime/helpers/classCallCheck'; import _createClass from 'babel-runtime/helpers/createClass'; import _possibleConstructorReturn from 'babel-runtime/helpers/possibleConstructorReturn'; import _inherits from 'babel-runtime/helpers/inherits'; import * as React from 'react'; import classnames from 'classnames'; import Icon from '../icon'; import Carousel from './carousel'; var ActivityIndicator = function (_React$PureComponent) { _inherits(ActivityIndicator, _React$PureComponent); function ActivityIndicator() { _classCallCheck(this, ActivityIndicator); return _possibleConstructorReturn(this, (ActivityIndicator.__proto__ || Object.getPrototypeOf(ActivityIndicator)).apply(this, arguments)); } _createClass(ActivityIndicator, [{ key: 'render', value: function render() { var _classnames; var _props = this.props, _props$prefixCls = _props.prefixCls, prefixCls = _props$prefixCls === undefined ? 'm-activity-indicator' : _props$prefixCls, type = _props.type, _props$size = _props.size, size = _props$size === undefined ? 16 : _props$size, _props$color = _props.color, color = _props$color === undefined ? '#1e9eff' : _props$color, vertical = _props.vertical, children = _props.children; var node = void 0; switch (type) { case 'carousel': node = React.createElement(Carousel, { size: size, color: color, prefixCls: prefixCls }); break; default: node = React.createElement(Icon, { type: 'loading', style: { color: color, fontSize: size } }); break; } var wrapCls = classnames((_classnames = {}, _defineProperty(_classnames, prefixCls, true), _defineProperty(_classnames, prefixCls + '-vertical', vertical), _classnames)); return React.createElement( 'div', { className: wrapCls }, React.createElement( 'div', { className: prefixCls + '-loading' }, node ), React.createElement( 'div', { className: prefixCls + '-text' }, children ) ); } }]); return ActivityIndicator; }(React.PureComponent); export default ActivityIndicator; ActivityIndicator.defaultProps = { type: 'roller', vertical: false };