@yamada-ui/react
Version:
React UI components of the Yamada, by the Yamada, for the Yamada built with React and Emotion
45 lines (41 loc) • 1.55 kB
JavaScript
"use client";
const require_create_component = require('../../core/components/create-component.cjs');
const require_use_field_props = require('../field/use-field-props.cjs');
const require_use_input_border = require('../input/use-input-border.cjs');
const require_input = require('../input/input.cjs');
const require_textarea_style = require('./textarea.style.cjs');
const require_use_textarea = require('./use-textarea.cjs');
//#region src/components/textarea/textarea.tsx
const { PropsContext: TextareaPropsContext, usePropsContext: useTextareaPropsContext, withContext } = require_create_component.createComponent("textarea", require_textarea_style.textareaStyle);
/**
* `Textarea` is a component used to obtain multi-line text input.
*
* @see https://yamada-ui.com/docs/components/textarea
*/
const Textarea = withContext("textarea")((props) => {
return {
rows: 2,
...require_input.useInputPropsContext(),
...props
};
}, (props) => {
const { props: { errorBorderColor, focusBorderColor,...rest }, ariaProps, dataProps, eventProps } = require_use_field_props.useFieldProps(props);
const { getTextareaProps } = require_use_textarea.useTextarea({
...ariaProps,
...dataProps,
...eventProps,
...rest
});
return {
...require_use_input_border.useInputBorder({
errorBorderColor,
focusBorderColor
}),
...getTextareaProps()
};
});
//#endregion
exports.Textarea = Textarea;
exports.TextareaPropsContext = TextareaPropsContext;
exports.useTextareaPropsContext = useTextareaPropsContext;
//# sourceMappingURL=textarea.cjs.map