apeman-react-list
Version:
apeman react package for list component.
106 lines (83 loc) • 2.3 kB
JavaScript
/**
* List component.
* @class ApList
*/
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _react = require('react');
var _react2 = _interopRequireDefault(_react);
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var _apemanReactSpinner = require('apeman-react-spinner');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/** @lends ApList */
var ApList = _react2.default.createClass({
displayName: 'ApList',
// --------------------
// Specs
// --------------------
propTypes: {
/** Shows spin */
spinning: _react.PropTypes.bool,
/** Theme of spinner */
spinner: _react.PropTypes.string,
/** Min height of list */
minHeight: _react.PropTypes.number,
/** Mark as empty */
empty: _react.PropTypes.bool,
/** Alt text to show when empty */
alt: _react.PropTypes.string
},
mixins: [],
statics: {},
getInitialState: function getInitialState() {
return {};
},
getDefaultProps: function getDefaultProps() {
return {
spinning: false,
spinner: _apemanReactSpinner.ApSpinner.DEFAULT_THEME,
minHeight: null,
empty: false,
alt: 'Not data found'
};
},
render: function render() {
var s = this;
var props = s.props;
return _react2.default.createElement(
'ul',
{ className: (0, _classnames2.default)('ap-list', {
'ap-list-empty': !!props.empty
}, props.className),
style: Object.assign({
minHeight: props.minHeight
}, props.style) },
_react2.default.createElement(_apemanReactSpinner.ApSpinner, { enabled: props.spinning,
className: 'ap-list-spinner'
}),
props.children,
props.empty ? s._renderAlt(props.alt) : null
);
},
// --------------------
// Lifecycle
// --------------------
// ------------------
// Custom
// ------------------
// ------------------
// Private
// ------------------
_renderAlt: function _renderAlt(text) {
return _react2.default.createElement(
'div',
{ className: 'ap-list-alt' },
text
);
}
});
exports.default = ApList;
//# sourceMappingURL=data:application/json;base64,bnVsbA==