1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.InputGroup = void 0;
|
4 | const tslib_1 = require("tslib");
|
5 | const React = tslib_1.__importStar(require("react"));
|
6 | const input_group_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/InputGroup/input-group"));
|
7 | const react_styles_1 = require("@patternfly/react-styles");
|
8 | const FormSelect_1 = require("../FormSelect");
|
9 | const TextArea_1 = require("../TextArea");
|
10 | const TextInput_1 = require("../TextInput");
|
11 | const InputGroup = (_a) => {
|
12 | var { className = '', children } = _a, props = tslib_1.__rest(_a, ["className", "children"]);
|
13 | const formCtrls = [FormSelect_1.FormSelect, TextArea_1.TextArea, TextInput_1.TextInput].map(comp => comp.displayName);
|
14 | const idItem = React.Children.toArray(children).find((child) => !formCtrls.includes(child.type.displayName) && child.props.id);
|
15 | return (React.createElement("div", Object.assign({ className: react_styles_1.css(input_group_1.default.inputGroup, className) }, props), idItem
|
16 | ? React.Children.map(children, (child) => formCtrls.includes(child.type.displayName)
|
17 | ? React.cloneElement(child, { 'aria-describedby': idItem.props.id })
|
18 | : child)
|
19 | : children));
|
20 | };
|
21 | exports.InputGroup = InputGroup;
|
22 | exports.InputGroup.displayName = 'InputGroup';
|
23 |
|
\ | No newline at end of file |