'use strict'; import React from 'react'; import classnames from 'classnames'; let ActionPanel = React.createClass({ propTypes: { title: React.PropTypes.string, content: React.PropTypes.oneOfType([ React.PropTypes.string, React.PropTypes.element ]), buttons: React.PropTypes.element, onClick: React.PropTypes.func, ignoreFocus: React.PropTypes.bool, leftColumnWidth: React.PropTypes.string, rightColumnWidth: React.PropTypes.string }, getInitialState() { return { isFocused: false }; }, handleFocus() { // if ignoreFocus (bool) is defined, then just ignore focusing on // the property and input if(this.props.ignoreFocus) { return; } // if onClick is defined from the outside, // just call it if(this.props.onClick) { this.props.onClick(); } this.refs.input.getDOMNode().focus(); this.setState({ isFocused: true }); }, render() { let { leftColumnWidth, rightColumnWidth } = this.props; return (
{this.props.content}
{this.props.buttons}
); } }); export default ActionPanel;