UNPKG

ringcentral-widget

Version:
88 lines (75 loc) 2.28 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = NavigationButton; var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames); var _styles = require('./styles.scss'); var _styles2 = _interopRequireDefault(_styles); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function NavigationButton(_ref) { var active = _ref.active, activeIcon = _ref.activeIcon, icon = _ref.icon, label = _ref.label, noticeCounts = _ref.noticeCounts, onClick = _ref.onClick, width = _ref.width; var notice = null; if (noticeCounts && noticeCounts > 0) { if (noticeCounts > 99) { notice = _react2.default.createElement( 'div', { className: _styles2.default.notices }, '99+' ); } else { notice = _react2.default.createElement( 'div', { className: _styles2.default.notice }, noticeCounts ); } } return _react2.default.createElement( 'div', { onClick: onClick, className: (0, _classnames2.default)(_styles2.default.navigationButton, active && _styles2.default.active), style: { width: width } }, _react2.default.createElement( 'div', { className: _styles2.default.iconHolder, title: label }, _react2.default.createElement( 'div', { className: _styles2.default.icon }, active ? activeIcon : icon ), notice ) ); } NavigationButton.propTypes = { icon: _propTypes2.default.node.isRequired, activeIcon: _propTypes2.default.node.isRequired, active: _propTypes2.default.bool, label: _propTypes2.default.string, noticeCounts: _propTypes2.default.number, width: _propTypes2.default.oneOfType([_propTypes2.default.number, _propTypes2.default.string]).isRequired, onClick: _propTypes2.default.func }; NavigationButton.defaultProps = { active: false, label: undefined, noticeCounts: undefined, onClick: undefined }; //# sourceMappingURL=index.js.map