ldx-widgets
Version:
widgets
51 lines (45 loc) • 1.26 kB
JavaScript
(function() {
var React, ToggleButton, button;
React = require('react');
button = React.DOM.button;
ToggleButton = React.createClass({
displayName: 'ToggleButton',
getDefaultProps: function() {
return {
option: {
disabled: false
}
};
},
render: function() {
var buttonProps, className, option, options, ref, selected, useTabs;
ref = this.props, option = ref.option, selected = ref.selected, options = ref.options, useTabs = ref.useTabs;
className = useTabs ? 'toggle-tab' : 'toggle-button';
if (selected) {
className += ' is-selected';
}
buttonProps = {
className: className,
onClick: this.setFormData
};
if (option.disabled === true) {
buttonProps.disabled = true;
}
if (option.title) {
buttonProps.title = option.title;
}
if (useTabs) {
buttonProps.style = {
width: (100 / options.length) + "%"
};
}
return button(buttonProps, [option.label]);
},
setFormData: function() {
var option;
option = this.props.option;
return this.props.setFormData(option.value);
}
});
module.exports = ToggleButton;
}).call(this);