apeman-react-select
Version:
apeman react package for select component.
124 lines (90 loc) • 6.97 kB
JavaScript
/**
* Item component
* @class ApSelectItem
*/
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ApSelectItem = undefined;
var _assign = require('babel-runtime/core-js/object/assign');
var _assign2 = _interopRequireDefault(_assign);
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
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 _asobj = require('asobj');
var _apemanReactTouchable = require('apeman-react-touchable');
var _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/** @lends ApSelectItem */
var ApSelectItem = function (_Component) {
(0, _inherits3.default)(ApSelectItem, _Component);
function ApSelectItem() {
(0, _classCallCheck3.default)(this, ApSelectItem);
return (0, _possibleConstructorReturn3.default)(this, (ApSelectItem.__proto__ || (0, _getPrototypeOf2.default)(ApSelectItem)).apply(this, arguments));
}
(0, _createClass3.default)(ApSelectItem, [{
key: 'render',
value: function render() {
var s = this;
var props = s.props;
var hasChildren = _react2.default.Children.count(props.children) > 0;
return _react2.default.createElement(
'a',
{ className: (0, _classnames2.default)('ap-select-item', {
'ap-select-item-focused': props.focused
}) },
hasChildren ? props.children : props.label
);
}
// --------------------
// Lifecycle
// --------------------
}, {
key: 'shouldComponentUpdate',
value: function shouldComponentUpdate(nextProps, nextState) {
var s = this;
var props = s.props,
state = s.state;
return !(0, _asobj.shallowEqual)(props, nextProps) || (0, _asobj.shallowEqual)(state, nextState);
}
}]);
return ApSelectItem;
}(_react.Component);
(0, _assign2.default)(ApSelectItem, {
// --------------------
// Specs
// --------------------
propTypes: {
/** Data for event */
data: _react.PropTypes.string,
/** Item label text */
label: _react.PropTypes.string,
/** Focused or not */
focused: _react.PropTypes.bool
},
defaultProps: {
label: null,
data: null,
focused: false
}
});
exports.ApSelectItem = ApSelectItem;
exports.default = (0, _apemanReactTouchable.withTouch)(ApSelectItem, {
getTouchData: function getTouchData() {
var s = this;
var props = s.props;
return props.data;
}
});
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwX3NlbGVjdF9pdGVtLmpzeCJdLCJuYW1lcyI6WyJBcFNlbGVjdEl0ZW0iLCJzIiwicHJvcHMiLCJoYXNDaGlsZHJlbiIsIkNoaWxkcmVuIiwiY291bnQiLCJjaGlsZHJlbiIsImZvY3VzZWQiLCJsYWJlbCIsIm5leHRQcm9wcyIsIm5leHRTdGF0ZSIsInN0YXRlIiwicHJvcFR5cGVzIiwiZGF0YSIsInN0cmluZyIsImJvb2wiLCJkZWZhdWx0UHJvcHMiLCJnZXRUb3VjaERhdGEiXSwibWFwcGluZ3MiOiJBQUFBOzs7OztBQUtBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUE7Ozs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRUE7SUFDTUEsWTs7Ozs7Ozs7Ozs2QkFDTTtBQUNSLFVBQU1DLElBQUksSUFBVjtBQURRLFVBRUZDLEtBRkUsR0FFUUQsQ0FGUixDQUVGQyxLQUZFOztBQUdSLFVBQUlDLGNBQWMsZ0JBQU1DLFFBQU4sQ0FBZUMsS0FBZixDQUFxQkgsTUFBTUksUUFBM0IsSUFBdUMsQ0FBekQ7QUFDQSxhQUNFO0FBQUE7QUFBQSxVQUFHLFdBQVksMEJBQVcsZ0JBQVgsRUFBNkI7QUFDMUMsc0NBQTBCSixNQUFNSztBQURVLFdBQTdCLENBQWY7QUFFT0osc0JBQWNELE1BQU1JLFFBQXBCLEdBQStCSixNQUFNTTtBQUY1QyxPQURGO0FBS0Q7O0FBRUQ7QUFDQTtBQUNBOzs7OzBDQUV1QkMsUyxFQUFXQyxTLEVBQVc7QUFDM0MsVUFBTVQsSUFBSSxJQUFWO0FBRDJDLFVBRXJDQyxLQUZxQyxHQUVwQkQsQ0FGb0IsQ0FFckNDLEtBRnFDO0FBQUEsVUFFOUJTLEtBRjhCLEdBRXBCVixDQUZvQixDQUU5QlUsS0FGOEI7O0FBRzNDLGFBQU8sQ0FBQyx5QkFBYVQsS0FBYixFQUFvQk8sU0FBcEIsQ0FBRCxJQUFtQyx5QkFBYUUsS0FBYixFQUFvQkQsU0FBcEIsQ0FBMUM7QUFDRDs7Ozs7QUFFSCxzQkFBY1YsWUFBZCxFQUE0Qjs7QUFFMUI7QUFDQTtBQUNBOztBQUVBWSxhQUFXO0FBQ1Q7QUFDQUMsVUFBTSxpQkFBTUMsTUFGSDtBQUdUO0FBQ0FOLFdBQU8saUJBQU1NLE1BSko7QUFLVDtBQUNBUCxhQUFTLGlCQUFNUTtBQU5OLEdBTmU7O0FBZTFCQyxnQkFBYztBQUNaUixXQUFPLElBREs7QUFFWkssVUFBTSxJQUZNO0FBR1pOLGFBQVM7QUFIRztBQWZZLENBQTVCOztRQXNCU1AsWSxHQUFBQSxZO2tCQUNNLHFDQUFVQSxZQUFWLEVBQXdCO0FBQ3JDaUIsY0FEcUMsMEJBQ3JCO0FBQ2QsUUFBTWhCLElBQUksSUFBVjtBQURjLFFBRVJDLEtBRlEsR0FFRUQsQ0FGRixDQUVSQyxLQUZROztBQUdkLFdBQU9BLE1BQU1XLElBQWI7QUFDRDtBQUxvQyxDQUF4QixDIiwiZmlsZSI6ImFwX3NlbGVjdF9pdGVtLmpzeCIsInNvdXJjZVJvb3QiOiJsaWIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEl0ZW0gY29tcG9uZW50XG4gKiBAY2xhc3MgQXBTZWxlY3RJdGVtXG4gKi9cblxuJ3VzZSBzdHJpY3QnXG5cbmltcG9ydCBSZWFjdCwgeyBDb21wb25lbnQsIFByb3BUeXBlcyBhcyB0eXBlcyB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgc2hhbGxvd0VxdWFsIH0gZnJvbSAnYXNvYmonXG5pbXBvcnQgeyB3aXRoVG91Y2ggfSBmcm9tICdhcGVtYW4tcmVhY3QtdG91Y2hhYmxlJ1xuaW1wb3J0IGNsYXNzbmFtZXMgZnJvbSAnY2xhc3NuYW1lcydcblxuLyoqIEBsZW5kcyBBcFNlbGVjdEl0ZW0gKi9cbmNsYXNzIEFwU2VsZWN0SXRlbSBleHRlbmRzIENvbXBvbmVudCB7XG4gIHJlbmRlciAoKSB7XG4gICAgY29uc3QgcyA9IHRoaXNcbiAgICBsZXQgeyBwcm9wcyB9ID0gc1xuICAgIGxldCBoYXNDaGlsZHJlbiA9IFJlYWN0LkNoaWxkcmVuLmNvdW50KHByb3BzLmNoaWxkcmVuKSA+IDBcbiAgICByZXR1cm4gKFxuICAgICAgPGEgY2xhc3NOYW1lPXsgY2xhc3NuYW1lcygnYXAtc2VsZWN0LWl0ZW0nLCB7XG4gICAgICAgICdhcC1zZWxlY3QtaXRlbS1mb2N1c2VkJzogcHJvcHMuZm9jdXNlZFxuICAgICAgfSkgfT57IGhhc0NoaWxkcmVuID8gcHJvcHMuY2hpbGRyZW4gOiBwcm9wcy5sYWJlbCB9PC9hPlxuICAgIClcbiAgfVxuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIExpZmVjeWNsZVxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4gIHNob3VsZENvbXBvbmVudFVwZGF0ZSAobmV4dFByb3BzLCBuZXh0U3RhdGUpIHtcbiAgICBjb25zdCBzID0gdGhpc1xuICAgIGxldCB7IHByb3BzLCBzdGF0ZSB9ID0gc1xuICAgIHJldHVybiAhc2hhbGxvd0VxdWFsKHByb3BzLCBuZXh0UHJvcHMpIHx8IHNoYWxsb3dFcXVhbChzdGF0ZSwgbmV4dFN0YXRlKVxuICB9XG59XG5PYmplY3QuYXNzaWduKEFwU2VsZWN0SXRlbSwge1xuXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIFNwZWNzXG4gIC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgcHJvcFR5cGVzOiB7XG4gICAgLyoqIERhdGEgZm9yIGV2ZW50ICovXG4gICAgZGF0YTogdHlwZXMuc3RyaW5nLFxuICAgIC8qKiBJdGVtIGxhYmVsIHRleHQgKi9cbiAgICBsYWJlbDogdHlwZXMuc3RyaW5nLFxuICAgIC8qKiBGb2N1c2VkIG9yIG5vdCAqL1xuICAgIGZvY3VzZWQ6IHR5cGVzLmJvb2xcbiAgfSxcblxuICBkZWZhdWx0UHJvcHM6IHtcbiAgICBsYWJlbDogbnVsbCxcbiAgICBkYXRhOiBudWxsLFxuICAgIGZvY3VzZWQ6IGZhbHNlXG4gIH1cbn0pXG5cbmV4cG9ydCB7IEFwU2VsZWN0SXRlbSB9XG5leHBvcnQgZGVmYXVsdCB3aXRoVG91Y2goQXBTZWxlY3RJdGVtLCB7XG4gIGdldFRvdWNoRGF0YSAoKSB7XG4gICAgY29uc3QgcyA9IHRoaXNcbiAgICBsZXQgeyBwcm9wcyB9ID0gc1xuICAgIHJldHVybiBwcm9wcy5kYXRhXG4gIH1cbn0pXG4iXX0=