antd
Version:
An enterprise-class UI design language and React-based implementation
106 lines (71 loc) • 3.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = undefined;
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
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 _classnames = require('classnames');
var _classnames2 = _interopRequireDefault(_classnames);
var _Input = require('./Input');
var _Input2 = _interopRequireDefault(_Input);
var _icon = require('../icon');
var _icon2 = _interopRequireDefault(_icon);
var _splitObject3 = require('../_util/splitObject');
var _splitObject4 = _interopRequireDefault(_splitObject3);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
var Search = function (_React$Component) {
(0, _inherits3["default"])(Search, _React$Component);
function Search() {
(0, _classCallCheck3["default"])(this, Search);
var _this = (0, _possibleConstructorReturn3["default"])(this, _React$Component.apply(this, arguments));
_this.onSearch = function () {
var onSearch = _this.props.onSearch;
if (onSearch) {
onSearch(_this.input.refs.input.value);
}
_this.input.refs.input.focus();
};
return _this;
}
Search.prototype.render = function render() {
var _classNames,
_this2 = this;
var _splitObject = (0, _splitObject4["default"])(this.props, ['className', 'prefixCls', 'style']),
_splitObject2 = (0, _slicedToArray3["default"])(_splitObject, 2),
_splitObject2$ = _splitObject2[0],
className = _splitObject2$.className,
prefixCls = _splitObject2$.prefixCls,
style = _splitObject2$.style,
others = _splitObject2[1];
delete others.onSearch;
var wrapperCls = (0, _classnames2["default"])((_classNames = {}, (0, _defineProperty3["default"])(_classNames, prefixCls + '-wrapper', true), (0, _defineProperty3["default"])(_classNames, className, !!className), _classNames));
return _react2["default"].createElement(
'div',
{ className: wrapperCls, style: style },
_react2["default"].createElement(_Input2["default"], (0, _extends3["default"])({ className: prefixCls, onPressEnter: this.onSearch, ref: function ref(node) {
return _this2.input = node;
} }, others)),
_react2["default"].createElement(_icon2["default"], { className: prefixCls + '-icon', onClick: this.onSearch, type: 'search' })
);
};
return Search;
}(_react2["default"].Component);
exports["default"] = Search;
Search.defaultProps = {
prefixCls: 'ant-input-search',
onSearch: function onSearch() {}
};
module.exports = exports['default'];