@wordpress/components
Version:
UI components for WordPress.
58 lines (47 loc) • 1.54 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _element = require("@wordpress/element");
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var _context = require("../context");
var _view = require("../../view");
var _hook = require("./hook");
/**
* Internal dependencies
*/
/**
* @param {import('../context').WordPressComponentProps<import('./types').Props, 'label', false>} props
* @param {import('react').ForwardedRef<any>} forwardedRef
*/
function ControlLabel(props, forwardedRef) {
const controlLabelProps = (0, _hook.useControlLabel)(props);
return (0, _element.createElement)(_view.View, (0, _extends2.default)({
as: "label"
}, controlLabelProps, {
ref: forwardedRef
}));
}
/**
* `ControlLabel` is a form component that works with `FormGroup` to provide a
* label for form elements (e.g. `Switch` or `TextInput`).
*
* ```jsx
* import { ControlLabel, FormGroup, TextInput } from '@wordpress/components/ui';
*
* function Example() {
* return (
* <FormGroup>
* <ControlLabel>First Name</ControlLabel>
* <TextInput />
* </FormGroup>
* );
* }
* ```
*/
const ConnectedControlLabel = (0, _context.contextConnect)(ControlLabel, 'ControlLabel');
var _default = ConnectedControlLabel;
exports.default = _default;
//# sourceMappingURL=component.js.map