UNPKG

@wordpress/components

Version:
56 lines (50 loc) 1.47 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import { createElement } from "@wordpress/element"; /** * Internal dependencies */ import { contextConnect } from '../context'; import { Grid } from '../grid'; import { View } from '../view'; import FormGroupContent from './form-group-content'; import { useFormGroup } from './use-form-group'; /** * @param {import('../context').ViewOwnProps<import('./types').FormGroupProps, 'div'>} props * @param {import('react').Ref<any>} forwardedRef */ function FormGroup(props, forwardedRef) { const { contentProps, horizontal, ...otherProps } = useFormGroup(props); if (horizontal) { return createElement(Grid, _extends({ templateColumns: "minmax(0, 1fr) 2fr" }, otherProps, { ref: forwardedRef }), createElement(FormGroupContent, contentProps)); } return createElement(View, _extends({}, otherProps, { ref: forwardedRef }), createElement(FormGroupContent, contentProps)); } /** * `FormGroup` is a form component that groups a label with a form element (e.g. `Switch` or `TextInput`). * * @example * ```jsx * import { FormGroup, TextInput } from `@wordpress/components/ui`; * * function Example() { * return ( * <FormGroup label="First name"> * <TextInput /> * </FormGroup> * ); * } * ``` */ const ConnectedFormGroup = contextConnect(FormGroup, 'FormGroup'); export default ConnectedFormGroup; //# sourceMappingURL=form-group.js.map