UNPKG

@mongodb-js/compass-query-bar

Version:

Renders a component for executing MongoDB queries through a GUI.

52 lines (42 loc) 1.2 kB
import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import classnames from 'classnames'; import FontAwesome from 'react-fontawesome'; import styles from './options-toggle.less'; class OptionsToggle extends PureComponent { static displayName = 'OptionsToggle'; static propTypes = { actions: PropTypes.object.isRequired, className: PropTypes.string, expanded: PropTypes.bool.isRequired }; static defaultProps = { className: '' }; onClick = () => { this.props.actions.toggleQueryOptions(); }; render() { const { expanded, className } = this.props; const symbol = expanded ? 'caret-down' : 'caret-right'; const _className = classnames( 'btn', 'btn-default', 'btn-xs', styles.component, { [ styles['is-open'] ]: expanded }, className ); return ( <div className={_className} onClick={this.onClick} data-test-id="query-bar-options-toggle"> <FontAwesome fixedWidth name={symbol} /> <span data-test-id="query-bar-options-toggle-text">Options</span> </div> ); } } export default OptionsToggle; export { OptionsToggle };