All files / javascripts/explore/components DisplayQueryButton.jsx

40% Statements 4/10
0% Branches 0/2
0% Functions 0/1
40% Lines 4/10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 381x 1x   1x                                                                 1x  
import React, { PropTypes } from 'react';
import ModalTrigger from './../../components/ModalTrigger';
 
const propTypes = {
  slice: PropTypes.object.isRequired,
};
 
export default class DisplayQueryButton extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      viewSqlQuery: '',
    };
    this.beforeOpen = this.beforeOpen.bind(this);
  }
 
  beforeOpen() {
    this.setState({
      viewSqlQuery: this.props.slice.viewSqlQuery,
    });
  }
 
  render() {
    const modalBody = (<pre>{this.state.viewSqlQuery}</pre>);
    return (
      <ModalTrigger
        isButton
        triggerNode={<span>Query</span>}
        modalTitle="Query"
        modalBody={modalBody}
        beforeOpen={this.beforeOpen}
      />
    );
  }
}
 
DisplayQueryButton.propTypes = propTypes;