UNPKG

@massds/mayflower-react

Version:

React versions of Mayflower design system UI components

53 lines (51 loc) 2.07 kB
"use strict"; exports.__esModule = true; exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _classnames = _interopRequireDefault(require("classnames")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; } /** * Label module. * @module @massds/mayflower-react/Label * @requires module:@massds/mayflower-assets/scss/01-atoms/helper-text */ var Label = function Label(_ref) { var children = _ref.children, inputId = _ref.inputId, hidden = _ref.hidden, disabled = _ref.disabled, conditionText = _ref.conditionText, className = _ref.className, useLegend = _ref.useLegend; var inputLabelClasses = (0, _classnames["default"])(className, { ma__label: true, 'ma__label--hidden': hidden, 'ma__label--disabled': disabled }); var Tag = useLegend ? 'legend' : 'label'; return /*#__PURE__*/_react["default"].createElement(Tag, { htmlFor: inputId, className: inputLabelClasses }, children, conditionText && conditionText.length > 0 && /*#__PURE__*/_react["default"].createElement("span", { className: "ma__label-condition" }, " (" + conditionText + ")")); }; Label.propTypes = process.env.NODE_ENV !== "production" ? { /** The text rendered as the label */ children: _propTypes["default"].string, /** The ID of the corresponding input field */ inputId: _propTypes["default"].string.isRequired, /** Render the visually hidden style for label */ hidden: _propTypes["default"].bool, /** Render the disabled style for label */ disabled: _propTypes["default"].bool, /** The text describing the conditional status of the field */ conditionText: _propTypes["default"].string, /** Additional classNames for label */ className: _propTypes["default"].string, /** Use legend tag instead of label. Use legend to caption a <fieldset> */ useLegend: _propTypes["default"].bool } : {}; var _default = exports["default"] = Label; module.exports = exports.default;