UNPKG

antd

Version:

An enterprise-class UI design language and React-based implementation

76 lines (67 loc) 2.89 kB
import _extends from 'babel-runtime/helpers/extends'; 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 PureRenderMixin from 'rc-util/es/PureRenderMixin'; import Lazyload from 'react-lazy-load'; import Checkbox from '../checkbox'; var Item = function (_React$Component) { _inherits(Item, _React$Component); function Item() { _classCallCheck(this, Item); return _possibleConstructorReturn(this, (Item.__proto__ || Object.getPrototypeOf(Item)).apply(this, arguments)); } _createClass(Item, [{ key: 'shouldComponentUpdate', value: function shouldComponentUpdate() { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return PureRenderMixin.shouldComponentUpdate.apply(this, args); } }, { key: 'render', value: function render() { var _classNames; var _props = this.props, renderedText = _props.renderedText, renderedEl = _props.renderedEl, item = _props.item, lazy = _props.lazy, checked = _props.checked, prefixCls = _props.prefixCls, onClick = _props.onClick; var className = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls + '-content-item', true), _defineProperty(_classNames, prefixCls + '-content-item-disabled', item.disabled), _classNames)); var listItem = React.createElement( 'li', { className: className, title: renderedText, onClick: item.disabled ? undefined : function () { return onClick(item); } }, React.createElement(Checkbox, { checked: checked, disabled: item.disabled }), React.createElement( 'span', null, renderedEl ) ); var children = null; if (lazy) { var lazyProps = _extends({ height: 32, offset: 500, throttle: 0, debounce: false }, lazy); children = React.createElement( Lazyload, lazyProps, listItem ); } else { children = listItem; } return children; } }]); return Item; }(React.Component); export default Item;