UNPKG

apeman-react-list

Version:
110 lines (85 loc) 6.76 kB
/** * List component. * @class ApList */ 'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _assign = require('babel-runtime/core-js/object/assign'); var _assign2 = _interopRequireDefault(_assign); 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: (0, _assign2.default)({ 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwX2xpc3QuanN4Il0sIm5hbWVzIjpbIkFwTGlzdCIsImNyZWF0ZUNsYXNzIiwicHJvcFR5cGVzIiwic3Bpbm5pbmciLCJib29sIiwic3Bpbm5lciIsInN0cmluZyIsIm1pbkhlaWdodCIsIm51bWJlciIsImVtcHR5IiwiYWx0IiwibWl4aW5zIiwic3RhdGljcyIsImdldEluaXRpYWxTdGF0ZSIsImdldERlZmF1bHRQcm9wcyIsIkRFRkFVTFRfVEhFTUUiLCJyZW5kZXIiLCJzIiwicHJvcHMiLCJjbGFzc05hbWUiLCJzdHlsZSIsImNoaWxkcmVuIiwiX3JlbmRlckFsdCIsInRleHQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OztBQUtBOzs7Ozs7Ozs7O0FBRUE7Ozs7QUFDQTs7OztBQUNBOzs7O0FBRUE7QUFDQSxJQUFNQSxTQUFTLGdCQUFNQyxXQUFOLENBQWtCO0FBQUE7OztBQUUvQjtBQUNBO0FBQ0E7O0FBRUFDLGFBQVc7QUFDVDtBQUNBQyxjQUFVLGlCQUFNQyxJQUZQO0FBR1Q7QUFDQUMsYUFBUyxpQkFBTUMsTUFKTjtBQUtUO0FBQ0FDLGVBQVcsaUJBQU1DLE1BTlI7QUFPVDtBQUNBQyxXQUFPLGlCQUFNTCxJQVJKO0FBU1Q7QUFDQU0sU0FBSyxpQkFBTUo7QUFWRixHQU5vQjs7QUFtQi9CSyxVQUFRLEVBbkJ1Qjs7QUFxQi9CQyxXQUFTLEVBckJzQjs7QUF1Qi9CQyxpQkF2QitCLDZCQXVCWjtBQUNqQixXQUFPLEVBQVA7QUFDRCxHQXpCOEI7QUEyQi9CQyxpQkEzQitCLDZCQTJCWjtBQUNqQixXQUFPO0FBQ0xYLGdCQUFVLEtBREw7QUFFTEUsZUFBUyw4QkFBVVUsYUFGZDtBQUdMUixpQkFBVyxJQUhOO0FBSUxFLGFBQU8sS0FKRjtBQUtMQyxXQUFLO0FBTEEsS0FBUDtBQU9ELEdBbkM4QjtBQXFDL0JNLFFBckMrQixvQkFxQ3JCO0FBQ1IsUUFBTUMsSUFBSSxJQUFWO0FBRFEsUUFFRkMsS0FGRSxHQUVRRCxDQUZSLENBRUZDLEtBRkU7OztBQUlSLFdBQ0U7QUFBQTtBQUFBLFFBQUksV0FBWSwwQkFBVyxTQUFYLEVBQXNCO0FBQzVCLDJCQUFpQixDQUFDLENBQUNBLE1BQU1UO0FBREcsU0FBdEIsRUFFUFMsTUFBTUMsU0FGQyxDQUFoQjtBQUdJLGVBQVEsc0JBQWM7QUFDWloscUJBQVdXLE1BQU1YO0FBREwsU0FBZCxFQUVDVyxNQUFNRSxLQUZQLENBSFo7QUFNRSxxRUFBVyxTQUFVRixNQUFNZixRQUEzQjtBQUNXLG1CQUFVO0FBRHJCLFFBTkY7QUFTSWUsWUFBTUcsUUFUVjtBQVVJSCxZQUFNVCxLQUFOLEdBQWNRLEVBQUVLLFVBQUYsQ0FBYUosTUFBTVIsR0FBbkIsQ0FBZCxHQUF3QztBQVY1QyxLQURGO0FBY0QsR0F2RDhCOzs7QUF5RC9CO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBWSxZQXJFK0Isc0JBcUVuQkMsSUFyRW1CLEVBcUViO0FBQ2hCLFdBQ0U7QUFBQTtBQUFBLFFBQUssV0FBVSxhQUFmO0FBQStCQTtBQUEvQixLQURGO0FBR0Q7QUF6RThCLENBQWxCLENBQWY7O2tCQTRFZXZCLE0iLCJmaWxlIjoiYXBfbGlzdC5qc3giLCJzb3VyY2VSb290IjoibGliIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBMaXN0IGNvbXBvbmVudC5cbiAqIEBjbGFzcyBBcExpc3RcbiAqL1xuXG4ndXNlIHN0cmljdCdcblxuaW1wb3J0IFJlYWN0LCB7UHJvcFR5cGVzIGFzIHR5cGVzfSBmcm9tICdyZWFjdCdcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnXG5pbXBvcnQge0FwU3Bpbm5lcn0gZnJvbSAnYXBlbWFuLXJlYWN0LXNwaW5uZXInXG5cbi8qKiBAbGVuZHMgQXBMaXN0ICovXG5jb25zdCBBcExpc3QgPSBSZWFjdC5jcmVhdGVDbGFzcyh7XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gU3BlY3NcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICBwcm9wVHlwZXM6IHtcbiAgICAvKiogU2hvd3Mgc3BpbiAqL1xuICAgIHNwaW5uaW5nOiB0eXBlcy5ib29sLFxuICAgIC8qKiBUaGVtZSBvZiBzcGlubmVyICovXG4gICAgc3Bpbm5lcjogdHlwZXMuc3RyaW5nLFxuICAgIC8qKiBNaW4gaGVpZ2h0IG9mIGxpc3QgKi9cbiAgICBtaW5IZWlnaHQ6IHR5cGVzLm51bWJlcixcbiAgICAvKiogTWFyayBhcyBlbXB0eSAqL1xuICAgIGVtcHR5OiB0eXBlcy5ib29sLFxuICAgIC8qKiBBbHQgdGV4dCB0byBzaG93IHdoZW4gZW1wdHkgKi9cbiAgICBhbHQ6IHR5cGVzLnN0cmluZ1xuICB9LFxuXG4gIG1peGluczogW10sXG5cbiAgc3RhdGljczoge30sXG5cbiAgZ2V0SW5pdGlhbFN0YXRlICgpIHtcbiAgICByZXR1cm4ge31cbiAgfSxcblxuICBnZXREZWZhdWx0UHJvcHMgKCkge1xuICAgIHJldHVybiB7XG4gICAgICBzcGlubmluZzogZmFsc2UsXG4gICAgICBzcGlubmVyOiBBcFNwaW5uZXIuREVGQVVMVF9USEVNRSxcbiAgICAgIG1pbkhlaWdodDogbnVsbCxcbiAgICAgIGVtcHR5OiBmYWxzZSxcbiAgICAgIGFsdDogJ05vdCBkYXRhIGZvdW5kJ1xuICAgIH1cbiAgfSxcblxuICByZW5kZXIgKCkge1xuICAgIGNvbnN0IHMgPSB0aGlzXG4gICAgbGV0IHsgcHJvcHMgfSA9IHNcblxuICAgIHJldHVybiAoXG4gICAgICA8dWwgY2xhc3NOYW1lPXsgY2xhc3NuYW1lcygnYXAtbGlzdCcsIHtcbiAgICAgICAgICAgICAgICAnYXAtbGlzdC1lbXB0eSc6ICEhcHJvcHMuZW1wdHlcbiAgICAgICAgICAgIH0sIHByb3BzLmNsYXNzTmFtZSkgfVxuICAgICAgICAgIHN0eWxlPXsgT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICAgICAgICAgICAgIG1pbkhlaWdodDogcHJvcHMubWluSGVpZ2h0XG4gICAgICAgICAgICAgICAgfSwgcHJvcHMuc3R5bGUpIH0+XG4gICAgICAgIDxBcFNwaW5uZXIgZW5hYmxlZD17IHByb3BzLnNwaW5uaW5nIH1cbiAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJhcC1saXN0LXNwaW5uZXJcIlxuICAgICAgICAvPlxuICAgICAgICB7IHByb3BzLmNoaWxkcmVuIH1cbiAgICAgICAgeyBwcm9wcy5lbXB0eSA/IHMuX3JlbmRlckFsdChwcm9wcy5hbHQpIDogbnVsbCB9XG4gICAgICA8L3VsPlxuICAgIClcbiAgfSxcblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBMaWZlY3ljbGVcbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS1cbiAgLy8gQ3VzdG9tXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBQcml2YXRlXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIF9yZW5kZXJBbHQgKHRleHQpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJhcC1saXN0LWFsdFwiPnsgdGV4dCB9PC9kaXY+XG4gICAgKVxuICB9XG59KVxuXG5leHBvcnQgZGVmYXVsdCBBcExpc3RcbiJdfQ==