Dashboard sipadu mbip
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

FormGroup.js 1.1KB

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