package.dist.components.field.field-textarea.cjs Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of react Show documentation
Show all versions of react Show documentation
A collection of unstyled, accessible UI components for React, utilizing state machines for seamless interaction.
The newest version!
'use client';
'use strict';
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const jsxRuntime = require('react/jsx-runtime');
const autoResize = require('@zag-js/auto-resize');
const react$1 = require('@zag-js/react');
const react = require('react');
const composeRefs = require('../../utils/compose-refs.cjs');
const factory = require('../factory.cjs');
const useFieldContext = require('./use-field-context.cjs');
const FieldTextarea = react.forwardRef((props, ref) => {
const { autoresize, ...textareaProps } = props;
const textareaRef = react.useRef(null);
const field = useFieldContext.useFieldContext();
const mergedProps = react$1.mergeProps(
field?.getTextareaProps(),
{ style: { resize: autoresize ? "none" : void 0 } },
textareaProps
);
react.useEffect(() => {
if (!autoresize) return;
return autoResize.autoresizeTextarea(textareaRef.current);
}, [autoresize]);
return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.textarea, { ...mergedProps, ref: composeRefs.composeRefs(ref, textareaRef) });
});
FieldTextarea.displayName = "FieldTextarea";
exports.FieldTextarea = FieldTextarea;
© 2015 - 2025 Weber Informatics LLC | Privacy Policy