@memori.ai/memori-react
Version:
[](https://www.npmjs.com/package/@memori.ai/memori-react)  ;
const tslib_1 = require("tslib");
const jsx_runtime_1 = require("react/jsx-runtime");
const react_1 = require("react");
const classnames_1 = tslib_1.__importDefault(require("classnames"));
const Button_1 = tslib_1.__importDefault(require("../ui/Button"));
const Expand_1 = tslib_1.__importDefault(require("../icons/Expand"));
const FullscreenExit_1 = tslib_1.__importDefault(require("../icons/FullscreenExit"));
const react_i18next_1 = require("react-i18next");
const ChatTextArea = ({ disabled = false, value, onChange, onPressEnter, onFocus, onBlur, }) => {
const { t } = (0, react_i18next_1.useTranslation)();
const [expanded, setExpanded] = (0, react_1.useState)(false);
return ((0, jsx_runtime_1.jsx)("div", { "data-testid": "chat-textarea", className: (0, classnames_1.default)('memori-chat-textarea', {
'memori-chat-textarea--expanded': expanded,
'memori-chat-textarea--disabled': disabled,
}), children: (0, jsx_runtime_1.jsxs)("div", { className: "memori-chat-textarea--inner", children: [(0, jsx_runtime_1.jsx)("textarea", { className: "memori-chat-textarea--input", disabled: disabled, value: value, onChange: e => {
onChange(e.target.value);
}, onKeyDownCapture: e => {
if (e.key === 'Enter' && !e.shiftKey && onPressEnter) {
onPressEnter(e);
}
}, onFocus: onFocus, onBlur: onBlur, maxLength: 100000 }), (0, jsx_runtime_1.jsx)("div", { className: "memori-chat-textarea--expand", children: (0, jsx_runtime_1.jsx)(Button_1.default, { className: (0, classnames_1.default)('memori-chat-textarea--expand-button'), onClick: () => setExpanded(!expanded), padded: false, ghost: true, title: expanded ? t('collapse') || 'Collapse' : t('expand') || 'Expand', icon: expanded ? (0, jsx_runtime_1.jsx)(FullscreenExit_1.default, {}) : (0, jsx_runtime_1.jsx)(Expand_1.default, {}) }) })] }) }));
};
exports.default = ChatTextArea;
//# sourceMappingURL=ChatTextArea.js.map