UNPKG

1.21 kBJavaScriptView Raw
1import _extends from "@babel/runtime/helpers/esm/extends";
2import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3var _excluded = ["bsPrefix", "className", "children", "controlId", "as"];
4import classNames from 'classnames';
5import React, { useMemo } from 'react';
6import FormContext from './FormContext';
7import { useBootstrapPrefix } from './ThemeProvider';
8var FormGroup = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
9 var bsPrefix = _ref.bsPrefix,
10 className = _ref.className,
11 children = _ref.children,
12 controlId = _ref.controlId,
13 _ref$as = _ref.as,
14 Component = _ref$as === void 0 ? 'div' : _ref$as,
15 props = _objectWithoutPropertiesLoose(_ref, _excluded);
16
17 bsPrefix = useBootstrapPrefix(bsPrefix, 'form-group');
18 var context = useMemo(function () {
19 return {
20 controlId: controlId
21 };
22 }, [controlId]);
23 return /*#__PURE__*/React.createElement(FormContext.Provider, {
24 value: context
25 }, /*#__PURE__*/React.createElement(Component, _extends({}, props, {
26 ref: ref,
27 className: classNames(className, bsPrefix)
28 }), children));
29});
30FormGroup.displayName = 'FormGroup';
31export default FormGroup;
\No newline at end of file