UNPKG

@talend/react-forms

Version:

React forms library based on json schema form.

50 lines 1.45 kB
import { useController, useFormContext } from 'react-hook-form'; import PropTypes from 'prop-types'; import { Form } from '@talend/design-system'; import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; function RHFSelect({ rules = {}, name = '', defaultValue, options, ...rest }) { var _fieldState$error, _fieldState$error2; const { control } = useFormContext(); const { field, fieldState } = useController({ control, name, rules, defaultValue }); return /*#__PURE__*/_jsxs(Form.Select, { hasError: !!((_fieldState$error = fieldState.error) !== null && _fieldState$error !== void 0 && _fieldState$error.message), description: (_fieldState$error2 = fieldState.error) === null || _fieldState$error2 === void 0 ? void 0 : _fieldState$error2.message, ...field, ...rest, children: [rest.required && !rest.placeholder && /*#__PURE__*/_jsx("option", { value: "" }), options && options.map(option => { return /*#__PURE__*/_jsx("option", { value: option.value, selected: rest.value === option.value, children: option.name }, option.value); })] }); } if (process.env.NODE_ENV !== 'production') { RHFSelect.propTypes = { rules: PropTypes.object, name: PropTypes.string, defaultValue: PropTypes.string, options: PropTypes.array }; } export default RHFSelect; //# sourceMappingURL=RHFSelect.component.js.map