@veracity/vui 2.26.0-beta.4 → 2.26.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/chat/chat.types.d.ts +2 -0
- package/dist/cjs/chat/chat.types.d.ts.map +1 -1
- package/dist/cjs/chat/chatInput.d.ts.map +1 -1
- package/dist/cjs/chat/chatInput.js +11 -11
- package/dist/cjs/chat/chatInput.js.map +1 -1
- package/dist/esm/chat/chat.types.d.ts +2 -0
- package/dist/esm/chat/chat.types.d.ts.map +1 -1
- package/dist/esm/chat/chatInput.d.ts.map +1 -1
- package/dist/esm/chat/chatInput.js +11 -11
- package/dist/esm/chat/chatInput.js.map +1 -1
- package/dist/tsconfig.legacy.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/chat/chat.types.ts +2 -0
- package/src/chat/chatInput.tsx +14 -11
|
@@ -23,6 +23,8 @@ export type ChatInputProps = Omit<BoxProps, 'size' | 'variant'> & {
|
|
|
23
23
|
placeholder?: string;
|
|
24
24
|
status?: ChatInputStatus;
|
|
25
25
|
helpText?: string;
|
|
26
|
+
/** @default 120 */
|
|
27
|
+
maxTextareaHeight?: number;
|
|
26
28
|
/** @default 'Generating message' */
|
|
27
29
|
processingMessage?: string;
|
|
28
30
|
onNewTopicClick?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GACxD,YAAY,CAAC,MAAM,CAAC,GAAG;IAErB,WAAW,CAAC,EAAE,eAAe,CAAA;IAE7B,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAEtB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAE5B,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAEhD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAEH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAChE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG;IAC7D,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA"}
|
|
1
|
+
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GACxD,YAAY,CAAC,MAAM,CAAC,GAAG;IAErB,WAAW,CAAC,EAAE,eAAe,CAAA;IAE7B,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAEtB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAE5B,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAEhD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAEH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAChE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mBAAmB;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG;IAC7D,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatInput.d.ts","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAA;AA0B9D;;GAEG;AACH,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"chatInput.d.ts","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAA;AA0B9D;;GAEG;AACH,eAAO,MAAM,SAAS,yDAgGpB,CAAA;AAGF,eAAe,SAAS,CAAA"}
|
|
@@ -32,7 +32,7 @@ const CustomTextarea = core_1.styled.textareaBox `
|
|
|
32
32
|
outline: none;
|
|
33
33
|
padding: 0 8px;
|
|
34
34
|
resize: none;
|
|
35
|
-
transition-duration: 0;
|
|
35
|
+
transition-duration: 0.3s;
|
|
36
36
|
width: 100%;
|
|
37
37
|
min-height: 1.5em;
|
|
38
38
|
overflow-y: hidden;
|
|
@@ -53,7 +53,7 @@ const CustomTextarea = core_1.styled.textareaBox `
|
|
|
53
53
|
* Displays a chat interface with messages and actions.
|
|
54
54
|
*/
|
|
55
55
|
exports.ChatInput = (0, core_1.vui)((props, ref) => {
|
|
56
|
-
const { helpText, placeholder = 'Type your message', status = chat_types_1.ChatInputStatus.Default, processingMessage = 'Generating message', value: valueProp, onNewTopicClick, onSend, onStop } = props, rest = __rest(props, ["helpText", "placeholder", "status", "processingMessage", "value", "onNewTopicClick", "onSend", "onStop"]);
|
|
56
|
+
const { helpText, placeholder = 'Type your message', status = chat_types_1.ChatInputStatus.Default, maxTextareaHeight = 120, processingMessage = 'Generating message', value: valueProp, onNewTopicClick, onSend, onStop } = props, rest = __rest(props, ["helpText", "placeholder", "status", "maxTextareaHeight", "processingMessage", "value", "onNewTopicClick", "onSend", "onStop"]);
|
|
57
57
|
const [value, setValue] = (0, react_1.useState)(valueProp);
|
|
58
58
|
const styles = (0, core_1.useStyleConfig)('Chat', props);
|
|
59
59
|
(0, react_1.useEffect)(() => {
|
|
@@ -78,18 +78,18 @@ exports.ChatInput = (0, core_1.vui)((props, ref) => {
|
|
|
78
78
|
const textarea = e.target;
|
|
79
79
|
textarea.placeholder = '';
|
|
80
80
|
// Dynamically adjust the height of the textarea
|
|
81
|
-
textarea.
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (status === chat_types_1.ChatInputStatus.Default) {
|
|
88
|
-
setValue(textarea.value);
|
|
81
|
+
if (textarea.scrollHeight <= maxTextareaHeight) {
|
|
82
|
+
textarea.style.height = 'auto';
|
|
83
|
+
textarea.style.maxHeight = 'auto';
|
|
84
|
+
textarea.style.height = `${textarea.scrollHeight}px`;
|
|
85
|
+
textarea.style.maxHeight = `${textarea.scrollHeight}px`;
|
|
86
|
+
textarea.style.lineHeight = '2.2';
|
|
89
87
|
}
|
|
88
|
+
if (status === chat_types_1.ChatInputStatus.Default)
|
|
89
|
+
setValue(textarea.value);
|
|
90
90
|
};
|
|
91
91
|
const isDisabled = status === chat_types_1.ChatInputStatus.Disabled;
|
|
92
|
-
return ((0, jsx_runtime_1.jsxs)(box_1.default, Object.assign({ className: (0, utils_1.cs)('vui-chat-input'), justifyContent: "space-between", ref: ref }, styles === null || styles === void 0 ? void 0 : styles.input, rest, { children: [!!onNewTopicClick && (0, jsx_runtime_1.jsx)(button_1.default, { icon: "falPlus", mr: 1, onClick: () => onNewTopicClick === null || onNewTopicClick === void 0 ? void 0 : onNewTopicClick() }), status === chat_types_1.ChatInputStatus.Processing ? ((0, jsx_runtime_1.jsxs)(box_1.default, { borderColor: consts_1.inputColors.border, borderWidth: 1, center: true, justifyContent: "flex-start", py: 0.5, w: "100%", children: [(0, jsx_runtime_1.jsx)(icon_1.default, { mx: 1, name: "fadSpinnerThird", pathFill: ['blue.40', 'blue.60'], size: "lg", variant: "spinning" }), (0, jsx_runtime_1.jsx)(box_1.default, { children: processingMessage })] })) : ((0, jsx_runtime_1.jsxs)(box_1.default, { column: true, w: "100%", children: [(0, jsx_runtime_1.jsxs)(box_1.default, { borderColor: consts_1.inputColors.border, borderWidth: 1, center: true, focusWithinRingColor: consts_1.inputColors.focus, justifyContent: "flex-start", w: "100%", children: [(0, jsx_runtime_1.jsx)(CustomTextarea, { disabled: isDisabled, onChange: handleTextareaChange, onFocus: handleTextareaChange, onKeyDown: onKeyDown, placeholder: placeholder, value: value }), (0, jsx_runtime_1.jsx)(chatInputButton_1.default, { disabled: !(value === null || value === void 0 ? void 0 : value.length), h: "100%", onSend: () => {
|
|
92
|
+
return ((0, jsx_runtime_1.jsxs)(box_1.default, Object.assign({ className: (0, utils_1.cs)('vui-chat-input'), justifyContent: "space-between", ref: ref }, styles === null || styles === void 0 ? void 0 : styles.input, rest, { children: [!!onNewTopicClick && status === chat_types_1.ChatInputStatus.Default && ((0, jsx_runtime_1.jsx)(button_1.default, { animation: "fadeUp", icon: "falPlus", mr: 1, onClick: () => onNewTopicClick === null || onNewTopicClick === void 0 ? void 0 : onNewTopicClick() })), status === chat_types_1.ChatInputStatus.Processing ? ((0, jsx_runtime_1.jsxs)(box_1.default, { borderColor: consts_1.inputColors.border, borderWidth: 1, center: true, justifyContent: "flex-start", py: 0.5, w: "100%", children: [(0, jsx_runtime_1.jsx)(icon_1.default, { mx: 1, name: "fadSpinnerThird", pathFill: ['blue.40', 'blue.60'], size: "lg", variant: "spinning" }), (0, jsx_runtime_1.jsx)(box_1.default, { children: processingMessage })] })) : ((0, jsx_runtime_1.jsxs)(box_1.default, { animation: "fadeUp", border: "0", column: true, outline: "none", w: "100%", children: [(0, jsx_runtime_1.jsxs)(box_1.default, { borderColor: consts_1.inputColors.border, borderWidth: 1, center: true, focusWithinRingColor: consts_1.inputColors.focus, justifyContent: "flex-start", w: "100%", children: [(0, jsx_runtime_1.jsx)(CustomTextarea, { disabled: isDisabled, onChange: handleTextareaChange, onFocus: handleTextareaChange, onKeyDown: onKeyDown, placeholder: placeholder, value: value }), (0, jsx_runtime_1.jsx)(chatInputButton_1.default, { disabled: !(value === null || value === void 0 ? void 0 : value.length), h: "100%", onSend: () => {
|
|
93
93
|
if (value === null || value === void 0 ? void 0 : value.length)
|
|
94
94
|
onSend === null || onSend === void 0 ? void 0 : onSend(value);
|
|
95
95
|
}, onStop: onStop, status: status })] }), !!helpText && (0, jsx_runtime_1.jsx)(helpText_1.default, { children: helpText })] }))] })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatInput.js","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iCAA0D;AAE1D,iDAAwB;AACxB,uDAA8B;AAC9B,kCAAmE;AACnE,mDAA0B;AAC1B,4CAA6C;AAC7C,iEAAwC;AACxC,oCAA6B;AAC7B,6CAA8D;AAC9D,wEAA+C;AAE/C,MAAM,cAAc,GAAG,aAAM,CAAC,WAAW,CAAA;;;;;;;;;;;;;;;;;;;;;;CAsBxC,CAAA;AACD;;GAEG;AACU,QAAA,SAAS,GAAG,IAAA,UAAG,EAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACnE,MAAM,EACJ,QAAQ,EACR,WAAW,GAAG,mBAAmB,EACjC,MAAM,GAAG,4BAAe,CAAC,OAAO,EAChC,iBAAiB,GAAG,oBAAoB,EACxC,KAAK,EAAE,SAAS,EAChB,eAAe,EACf,MAAM,EACN,MAAM,KAEJ,KAAK,EADJ,IAAI,UACL,KAAK,
|
|
1
|
+
{"version":3,"file":"chatInput.js","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,8 @@ export type ChatInputProps = Omit<BoxProps, 'size' | 'variant'> & {
|
|
|
23
23
|
placeholder?: string;
|
|
24
24
|
status?: ChatInputStatus;
|
|
25
25
|
helpText?: string;
|
|
26
|
+
/** @default 120 */
|
|
27
|
+
maxTextareaHeight?: number;
|
|
26
28
|
/** @default 'Generating message' */
|
|
27
29
|
processingMessage?: string;
|
|
28
30
|
onNewTopicClick?: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GACxD,YAAY,CAAC,MAAM,CAAC,GAAG;IAErB,WAAW,CAAC,EAAE,eAAe,CAAA;IAE7B,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAEtB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAE5B,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAEhD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAEH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAChE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG;IAC7D,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA"}
|
|
1
|
+
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/chat/chat.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,eAAe;IACzB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GACxD,YAAY,CAAC,MAAM,CAAC,GAAG;IAErB,WAAW,CAAC,EAAE,eAAe,CAAA;IAE7B,QAAQ,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAE7B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IAEtB,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAE5B,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAEhD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAElC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAEH,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG;IAChE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,mBAAmB;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG;IAC7D,MAAM,CAAC,EAAE,eAAe,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatInput.d.ts","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAA;AA0B9D;;GAEG;AACH,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"chatInput.d.ts","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAA;AA0B9D;;GAEG;AACH,eAAO,MAAM,SAAS,yDAgGpB,CAAA;AAGF,eAAe,SAAS,CAAA"}
|
|
@@ -15,7 +15,7 @@ const CustomTextarea = styled.textareaBox `
|
|
|
15
15
|
outline: none;
|
|
16
16
|
padding: 0 8px;
|
|
17
17
|
resize: none;
|
|
18
|
-
transition-duration: 0;
|
|
18
|
+
transition-duration: 0.3s;
|
|
19
19
|
width: 100%;
|
|
20
20
|
min-height: 1.5em;
|
|
21
21
|
overflow-y: hidden;
|
|
@@ -36,7 +36,7 @@ const CustomTextarea = styled.textareaBox `
|
|
|
36
36
|
* Displays a chat interface with messages and actions.
|
|
37
37
|
*/
|
|
38
38
|
export const ChatInput = vui((props, ref) => {
|
|
39
|
-
const { helpText, placeholder = 'Type your message', status = ChatInputStatus.Default, processingMessage = 'Generating message', value: valueProp, onNewTopicClick, onSend, onStop, ...rest } = props;
|
|
39
|
+
const { helpText, placeholder = 'Type your message', status = ChatInputStatus.Default, maxTextareaHeight = 120, processingMessage = 'Generating message', value: valueProp, onNewTopicClick, onSend, onStop, ...rest } = props;
|
|
40
40
|
const [value, setValue] = useState(valueProp);
|
|
41
41
|
const styles = useStyleConfig('Chat', props);
|
|
42
42
|
useEffect(() => {
|
|
@@ -61,18 +61,18 @@ export const ChatInput = vui((props, ref) => {
|
|
|
61
61
|
const textarea = e.target;
|
|
62
62
|
textarea.placeholder = '';
|
|
63
63
|
// Dynamically adjust the height of the textarea
|
|
64
|
-
textarea.
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
if (status === ChatInputStatus.Default) {
|
|
71
|
-
setValue(textarea.value);
|
|
64
|
+
if (textarea.scrollHeight <= maxTextareaHeight) {
|
|
65
|
+
textarea.style.height = 'auto';
|
|
66
|
+
textarea.style.maxHeight = 'auto';
|
|
67
|
+
textarea.style.height = `${textarea.scrollHeight}px`;
|
|
68
|
+
textarea.style.maxHeight = `${textarea.scrollHeight}px`;
|
|
69
|
+
textarea.style.lineHeight = '2.2';
|
|
72
70
|
}
|
|
71
|
+
if (status === ChatInputStatus.Default)
|
|
72
|
+
setValue(textarea.value);
|
|
73
73
|
};
|
|
74
74
|
const isDisabled = status === ChatInputStatus.Disabled;
|
|
75
|
-
return (_jsxs(Box, { className: cs('vui-chat-input'), justifyContent: "space-between", ref: ref, ...styles?.input, ...rest, children: [!!onNewTopicClick && _jsx(Button, { icon: "falPlus", mr: 1, onClick: () => onNewTopicClick?.() }), status === ChatInputStatus.Processing ? (_jsxs(Box, { borderColor: inputColors.border, borderWidth: 1, center: true, justifyContent: "flex-start", py: 0.5, w: "100%", children: [_jsx(Icon, { mx: 1, name: "fadSpinnerThird", pathFill: ['blue.40', 'blue.60'], size: "lg", variant: "spinning" }), _jsx(Box, { children: processingMessage })] })) : (_jsxs(Box, { column: true, w: "100%", children: [_jsxs(Box, { borderColor: inputColors.border, borderWidth: 1, center: true, focusWithinRingColor: inputColors.focus, justifyContent: "flex-start", w: "100%", children: [_jsx(CustomTextarea, { disabled: isDisabled, onChange: handleTextareaChange, onFocus: handleTextareaChange, onKeyDown: onKeyDown, placeholder: placeholder, value: value }), _jsx(ChatInputButton, { disabled: !value?.length, h: "100%", onSend: () => {
|
|
75
|
+
return (_jsxs(Box, { className: cs('vui-chat-input'), justifyContent: "space-between", ref: ref, ...styles?.input, ...rest, children: [!!onNewTopicClick && status === ChatInputStatus.Default && (_jsx(Button, { animation: "fadeUp", icon: "falPlus", mr: 1, onClick: () => onNewTopicClick?.() })), status === ChatInputStatus.Processing ? (_jsxs(Box, { borderColor: inputColors.border, borderWidth: 1, center: true, justifyContent: "flex-start", py: 0.5, w: "100%", children: [_jsx(Icon, { mx: 1, name: "fadSpinnerThird", pathFill: ['blue.40', 'blue.60'], size: "lg", variant: "spinning" }), _jsx(Box, { children: processingMessage })] })) : (_jsxs(Box, { animation: "fadeUp", border: "0", column: true, outline: "none", w: "100%", children: [_jsxs(Box, { borderColor: inputColors.border, borderWidth: 1, center: true, focusWithinRingColor: inputColors.focus, justifyContent: "flex-start", w: "100%", children: [_jsx(CustomTextarea, { disabled: isDisabled, onChange: handleTextareaChange, onFocus: handleTextareaChange, onKeyDown: onKeyDown, placeholder: placeholder, value: value }), _jsx(ChatInputButton, { disabled: !value?.length, h: "100%", onSend: () => {
|
|
76
76
|
if (value?.length)
|
|
77
77
|
onSend?.(value);
|
|
78
78
|
}, onStop: onStop, status: status })] }), !!helpText && _jsx(HelpText, { children: helpText })] }))] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatInput.js","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAiB,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,GAAG,MAAM,QAAQ,CAAA;AACxB,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AACnE,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,QAAQ,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAA;AAC7B,OAAO,EAAkB,eAAe,EAAE,MAAM,cAAc,CAAA;AAC9D,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAE/C,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAA;;;;;;;;;;;;;;;;;;;;;;CAsBxC,CAAA;AACD;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACnE,MAAM,EACJ,QAAQ,EACR,WAAW,GAAG,mBAAmB,EACjC,MAAM,GAAG,eAAe,CAAC,OAAO,EAChC,iBAAiB,GAAG,oBAAoB,EACxC,KAAK,EAAE,SAAS,EAChB,eAAe,EACf,MAAM,EACN,MAAM,EACN,GAAG,IAAI,EACR,GAAG,KAAK,CAAA;IAET,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,SAAmB,CAAC,CAAA;IAC3E,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAE5C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,KAAK,eAAe,CAAC,OAAO;YAAE,QAAQ,CAAC,SAAmB,CAAC,CAAA;IACvE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IAEZ,MAAM,SAAS,GAAG,CAAC,CAAkC,EAAE,EAAE;QACvD,IAAI,CAAC,CAAC,GAAG,KAAK,YAAY,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,MAAM;YAAE,OAAO,CAAC,CAAC,cAAc,EAAE,CAAA;QAE7E,IAAI,CAAC,CAAC,GAAG,KAAK,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC9C,CAAC,CAAC,eAAe,EAAE,CAAA;YACnB,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,KAAK,eAAe,CAAC,OAAO;gBAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;QAC1E,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;YAClC,CAAC,CAAC,eAAe,EAAE,CAAA;YACnB,IAAI,MAAM,KAAK,eAAe,CAAC,UAAU;gBAAE,MAAM,EAAE,EAAE,CAAA;QACvD,CAAC;IACH,CAAC,CAAA;IAED,MAAM,oBAAoB,GAAG,CAAC,CAAyC,EAAE,EAAE;QACzE,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAA;QACzB,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAA;QAEzB,gDAAgD;
|
|
1
|
+
{"version":3,"file":"chatInput.js","sourceRoot":"","sources":["../../../src/chat/chatInput.tsx"],"names":[],"mappings":"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"}
|