UNPKG

@talend/react-bootstrap

Version:

Bootstrap 3 components built with React

54 lines (53 loc) 1.87 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _classnames = _interopRequireDefault(require("classnames")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _warning = _interopRequireDefault(require("warning")); var _bootstrapUtils = require("./utils/bootstrapUtils"); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } const propTypes = { /** * Uses `controlId` from `<FormGroup>` if not explicitly specified. */ htmlFor: _propTypes.default.string, srOnly: _propTypes.default.bool }; const defaultProps = { srOnly: false }; const contextTypes = { $bs_formGroup: _propTypes.default.object }; class ControlLabel extends _react.default.Component { render() { const formGroup = this.context.$bs_formGroup; const controlId = formGroup && formGroup.controlId; const { htmlFor = controlId, srOnly, className, ...props } = this.props; const [bsProps, elementProps] = (0, _bootstrapUtils.splitBsProps)(props); (0, _warning.default)(controlId == null || htmlFor === controlId, '`controlId` is ignored on `<ControlLabel>` when `htmlFor` is specified.'); const classes = { ...(0, _bootstrapUtils.getClassSet)(bsProps), 'sr-only': srOnly }; return /*#__PURE__*/(0, _jsxRuntime.jsx)("label", { ...elementProps, htmlFor: htmlFor, className: (0, _classnames.default)(className, classes) }); } } ControlLabel.propTypes = propTypes; ControlLabel.defaultProps = defaultProps; ControlLabel.contextTypes = contextTypes; var _default = exports.default = (0, _bootstrapUtils.bsClass)('control-label', ControlLabel); //# sourceMappingURL=ControlLabel.js.map