UNPKG

elemental

Version:
36 lines (33 loc) 1.27 kB
'use strict'; var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; var React = require('react'); var blacklist = require('blacklist'); var classNames = require('classnames'); module.exports = React.createClass({ displayName: 'FormLabel', propTypes: { className: React.PropTypes.string, htmlFor: React.PropTypes.string, id: React.PropTypes.string, style: React.PropTypes.object, verticalAlign: React.PropTypes.oneOf(['baseline', 'bottom', 'inherit', 'initial', 'middle', 'sub', 'super', 'text-bottom', 'text-top', 'top']) }, render: function render() { // classes var className = classNames('FormLabel', this.props.className); // props var props = blacklist(this.props, 'htmlFor', 'id', 'className', 'style'); // style var style; if (this.props.verticalAlign) { style = { verticalAlign: this.props.verticalAlign }; } return React.createElement( 'label', _extends({ className: className, htmlFor: this.props.htmlFor || this.props.id, style: style || this.props.style }, props), this.props.children ); } });