@trellixio/roaster-coffee
Version:
Beans' product component library
15 lines (14 loc) • 937 B
JavaScript
import * as React from 'react';
import { classNames, useUid } from '@/utils';
export const Textarea = React.forwardRef((props, ref) => {
const { label, error, id, style, helpText, disabled, labelClassName, inputClassName, rows, onChange, defaultValue, placeholder, } = props;
const uid = useUid(id);
const handleChange = (event) => {
onChange === null || onChange === void 0 ? void 0 : onChange(event.currentTarget.value);
};
return (React.createElement("label", { htmlFor: uid, className: classNames({ error }, labelClassName) },
React.createElement("p", null, label),
React.createElement("textarea", { id: uid, ref: ref, rows: rows, style: style, disabled: disabled, onChange: handleChange, placeholder: placeholder, defaultValue: defaultValue, className: classNames(inputClassName) }),
React.createElement("small", null, error || helpText)));
});
Textarea.displayName = 'Textarea';