@theia/ai-chat-ui 1.55.0-next.4 → 1.55.0-next.70

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.
@@ -105,6 +105,9 @@ const ChatInput = (props) => {
105
105
  const allRequests = props.chatModel.getRequests();
106
106
  const lastRequest = allRequests.length === 0 ? undefined : allRequests[allRequests.length - 1];
107
107
  const createInputElement = async () => {
108
+ const paddingTop = 8;
109
+ const lineHeight = 20;
110
+ const maxHeight = 240;
108
111
  const resource = await props.untitledResourceResolver.createUntitledResource('', chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION);
109
112
  const editor = await props.editorProvider.createInline(resource.uri, editorContainerRef.current, {
110
113
  language: chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION,
@@ -112,7 +115,7 @@ const ChatInput = (props) => {
112
115
  codeLens: false,
113
116
  inlayHints: { enabled: 'off' },
114
117
  hover: { enabled: false },
115
- autoSizing: true,
118
+ autoSizing: false, // we handle the sizing ourselves
116
119
  scrollBeyondLastLine: false,
117
120
  scrollBeyondLastColumn: 0,
118
121
  minHeight: 1,
@@ -123,8 +126,8 @@ const ChatInput = (props) => {
123
126
  scrollbar: { horizontal: 'hidden' },
124
127
  automaticLayout: true,
125
128
  lineNumbers: 'off',
126
- lineHeight: 20,
127
- padding: { top: 8 },
129
+ lineHeight,
130
+ padding: { top: paddingTop },
128
131
  suggest: {
129
132
  showIcons: true,
130
133
  showSnippets: false,
@@ -136,8 +139,22 @@ const ChatInput = (props) => {
136
139
  wrappingStrategy: 'advanced',
137
140
  stickyScroll: { enabled: false },
138
141
  });
139
- editor.getControl().onDidChangeModelContent(() => {
140
- layout();
142
+ if (editorContainerRef.current) {
143
+ editorContainerRef.current.style.height = (lineHeight + (2 * paddingTop)) + 'px';
144
+ }
145
+ const updateEditorHeight = () => {
146
+ if (editorContainerRef.current) {
147
+ const contentHeight = editor.getControl().getContentHeight() + paddingTop;
148
+ editorContainerRef.current.style.height = `${Math.min(contentHeight, maxHeight)}px`;
149
+ }
150
+ };
151
+ editor.getControl().onDidChangeModelContent(updateEditorHeight);
152
+ const resizeObserver = new ResizeObserver(updateEditorHeight);
153
+ if (editorContainerRef.current) {
154
+ resizeObserver.observe(editorContainerRef.current);
155
+ }
156
+ editor.getControl().onDidDispose(() => {
157
+ resizeObserver.disconnect();
141
158
  });
142
159
  editor.getControl().onContextMenu(e => props.contextMenuCallback(e.event));
143
160
  editorRef.current = editor;
@@ -165,21 +182,6 @@ const ChatInput = (props) => {
165
182
  editorRef.current.document.textEditorModel.setValue('');
166
183
  }
167
184
  }
168
- ;
169
- function layout() {
170
- var _a, _b;
171
- if (editorRef.current === undefined) {
172
- return;
173
- }
174
- const hiddenClass = 'hidden';
175
- const editor = editorRef.current;
176
- if (editor.document.textEditorModel.getValue().length > 0) {
177
- (_a = placeholderRef.current) === null || _a === void 0 ? void 0 : _a.classList.add(hiddenClass);
178
- }
179
- else {
180
- (_b = placeholderRef.current) === null || _b === void 0 ? void 0 : _b.classList.remove(hiddenClass);
181
- }
182
- }
183
185
  const onKeyDown = React.useCallback((event) => {
184
186
  var _a;
185
187
  if (!props.isEnabled) {
@@ -190,10 +192,20 @@ const ChatInput = (props) => {
190
192
  submit(((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.document.textEditorModel.getValue()) || '');
191
193
  }
192
194
  }, [props.isEnabled]);
195
+ const handleInputFocus = () => {
196
+ var _a;
197
+ (_a = placeholderRef.current) === null || _a === void 0 ? void 0 : _a.classList.add('hidden');
198
+ };
199
+ const handleInputBlur = () => {
200
+ var _a, _b;
201
+ if (!((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.getControl().getValue())) {
202
+ (_b = placeholderRef.current) === null || _b === void 0 ? void 0 : _b.classList.remove('hidden');
203
+ }
204
+ };
193
205
  return React.createElement("div", { className: 'theia-ChatInput' },
194
206
  React.createElement("div", { className: 'theia-ChatInput-Editor-Box' },
195
- React.createElement("div", { className: 'theia-ChatInput-Editor', ref: editorContainerRef, onKeyDown: onKeyDown },
196
- React.createElement("div", { ref: placeholderRef, className: 'theia-ChatInput-Editor-Placeholder' }, "Enter your question"))),
207
+ React.createElement("div", { className: 'theia-ChatInput-Editor', ref: editorContainerRef, onKeyDown: onKeyDown, onFocus: handleInputFocus, onBlur: handleInputBlur },
208
+ React.createElement("div", { ref: placeholderRef, className: 'theia-ChatInput-Editor-Placeholder' }, "Ask a question"))),
197
209
  React.createElement("div", { className: "theia-ChatInputOptions" }, inProgress ? React.createElement("span", { className: "codicon codicon-stop-circle option", title: "Cancel (Esc)", onClick: () => {
198
210
  if (lastRequest) {
199
211
  props.onCancel(lastRequest);
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input-widget.js","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-input-widget.js","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/code-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAE7E,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAgB,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAsB,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBACa,gBACT,YAAW,wBAAwB,CAAC,uBAAuB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAEtE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAExD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAEpD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAE5D,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;IAyB9E,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,uBAAuB,GAAG,SAAS;IASnE,OAAO,CAAC,QAAQ;IAMhB;;;;;OAKG;IACG,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrE,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAQvG;AAgCD;;GAEG;AACH,eAAO,MAAM,WAAW,UAAW;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,cAAc,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAA;CAChD,sBA0CA,CAAC"}
1
+ {"version":3,"file":"code-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/code-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EACH,mBAAmB,EACnB,uBAAuB,EAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,wBAAwB,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAE7E,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,mDAAmD,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAgB,MAAM,2BAA2B,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAsB,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,qBACa,gBACT,YAAW,wBAAwB,CAAC,uBAAuB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAEtE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAExD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAEpD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAE5D,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,YAAY,GAAG,SAAS;IAyB9E,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,uBAAuB,GAAG,SAAS;IASnE,OAAO,CAAC,QAAQ;IAMhB;;;;;OAKG;IACG,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUrE,SAAS,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;CAQvG;AAgCD;;GAEG;AACH,eAAO,MAAM,WAAW,UAAW;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,cAAc,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAA;CAChD,sBA8CA,CAAC"}
@@ -118,7 +118,7 @@ const CopyToClipboardButton = (props) => {
118
118
  const copyCodeToClipboard = React.useCallback(() => {
119
119
  clipboardService.writeText(code);
120
120
  }, [code, clipboardService]);
121
- return React.createElement("button", { className: 'theia-button main', onClick: copyCodeToClipboard }, "Copy");
121
+ return React.createElement("div", { className: 'button codicon codicon-copy', title: 'Copy', role: 'button', onClick: copyCodeToClipboard });
122
122
  };
123
123
  const InsertCodeAtCursorButton = (props) => {
124
124
  const { code, editorManager } = props;
@@ -138,7 +138,7 @@ const InsertCodeAtCursorButton = (props) => {
138
138
  }]);
139
139
  }
140
140
  }, [code, editorManager]);
141
- return React.createElement("button", { className: 'theia-button main', onClick: insertCode }, "Insert at Cursor");
141
+ return React.createElement("div", { className: 'button codicon codicon-insert', title: 'Insert at Cursor', role: 'button', onClick: insertCode });
142
142
  };
143
143
  /**
144
144
  * Renders the given code within a Monaco Editor
@@ -155,9 +155,13 @@ const CodeWrapper = (props) => {
155
155
  autoSizing: true,
156
156
  scrollBeyondLastLine: false,
157
157
  scrollBeyondLastColumn: 0,
158
- renderFinalNewline: 'on',
158
+ renderFinalNewline: 'off',
159
159
  maxHeight: -1,
160
- scrollbar: { vertical: 'hidden', horizontal: 'hidden' },
160
+ scrollbar: {
161
+ vertical: 'hidden',
162
+ alwaysConsumeMouseWheel: false
163
+ },
164
+ wordWrap: 'off',
161
165
  codeLens: false,
162
166
  inlayHints: { enabled: 'off' },
163
167
  hover: { enabled: false }
@@ -180,7 +184,7 @@ const CodeWrapper = (props) => {
180
184
  }
181
185
  }, [props.content]);
182
186
  (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.resizeToFit();
183
- return React.createElement("div", { ref: ref });
187
+ return React.createElement("div", { className: 'theia-CodeWrapper', ref: ref });
184
188
  };
185
189
  exports.CodeWrapper = CodeWrapper;
186
190
  //# sourceMappingURL=code-part-renderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"code-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/code-part-renderer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/code-part-renderer.tsx"],"names":[],"mappings":"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"}
@@ -5,5 +5,6 @@ import { ReactNode } from '@theia/core/shared/react';
5
5
  export declare class ToolCallPartRenderer implements ChatResponsePartRenderer<ToolCallChatResponseContent> {
6
6
  canHandle(response: ChatResponseContent): number;
7
7
  render(response: ToolCallChatResponseContent): ReactNode;
8
+ private tryPrettyPrintJson;
8
9
  }
9
10
  //# sourceMappingURL=toolcall-part-renderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toolcall-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/toolcall-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,qBACa,oBAAqB,YAAW,wBAAwB,CAAC,2BAA2B,CAAC;IAE9F,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAMhD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,GAAG,SAAS;CAa3D"}
1
+ {"version":3,"file":"toolcall-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/toolcall-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC7F,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,qBACa,oBAAqB,YAAW,wBAAwB,CAAC,2BAA2B,CAAC;IAE9F,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAMhD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,GAAG,SAAS;IAaxD,OAAO,CAAC,kBAAkB;CAW7B"}
@@ -33,13 +33,25 @@ let ToolCallPartRenderer = class ToolCallPartRenderer {
33
33
  React.createElement("summary", null,
34
34
  "Ran ",
35
35
  response.name),
36
- React.createElement("p", null, response.result))
36
+ React.createElement("pre", null, this.tryPrettyPrintJson(response)))
37
37
  : React.createElement("span", null,
38
38
  React.createElement(Spinner, null),
39
39
  " Running [",
40
40
  response.name,
41
41
  "]"));
42
42
  }
43
+ tryPrettyPrintJson(response) {
44
+ let responseContent = response.result;
45
+ try {
46
+ if (response.result) {
47
+ responseContent = JSON.stringify(JSON.parse(response.result), undefined, 2);
48
+ }
49
+ }
50
+ catch (e) {
51
+ // fall through
52
+ }
53
+ return responseContent;
54
+ }
43
55
  };
44
56
  exports.ToolCallPartRenderer = ToolCallPartRenderer;
45
57
  exports.ToolCallPartRenderer = ToolCallPartRenderer = tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"toolcall-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/toolcall-part-renderer.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAGhF,4DAA0D;AAC1D,sDAA6F;AAE7F,kDAAkD;AAG3C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAE7B,SAAS,CAAC,QAA6B;QACnC,IAAI,oCAA2B,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,MAAM,CAAC,QAAqC;QACxC,OAAO,4BAAI,SAAS,EAAC,gBAAgB,IAChC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChB;gBACI;;oBAAc,QAAQ,CAAC,IAAI,CAAW;gBACtC,+BAAI,QAAQ,CAAC,MAAM,CAAK,CAClB;YACV,CAAC,CAAC;gBAAM,oBAAC,OAAO,OAAG;;gBAAW,QAAQ,CAAC,IAAI;oBAAS,CAEvD,CAAC;IAEV,CAAC;CAEJ,CAAA;AArBY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAqBhC;AAED,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAClB,2BAAG,SAAS,EAAC,uBAAuB,GAAK,CAC5C,CAAC"}
1
+ {"version":3,"file":"toolcall-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/toolcall-part-renderer.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAGhF,4DAA0D;AAC1D,sDAA6F;AAE7F,kDAAkD;AAG3C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAE7B,SAAS,CAAC,QAA6B;QACnC,IAAI,oCAA2B,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,MAAM,CAAC,QAAqC;QACxC,OAAO,4BAAI,SAAS,EAAC,gBAAgB,IAChC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChB;gBACI;;oBAAc,QAAQ,CAAC,IAAI,CAAW;gBACtC,iCAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAO,CACxC;YACV,CAAC,CAAC;gBAAM,oBAAC,OAAO,OAAG;;gBAAW,QAAQ,CAAC,IAAI;oBAAS,CAEvD,CAAC;IAEV,CAAC;IAEO,kBAAkB,CAAC,QAAqC;QAC5D,IAAI,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC;QACtC,IAAI,CAAC;YACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAClB,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAChF,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,eAAe;QACnB,CAAC;QACD,OAAO,eAAe,CAAC;IAC3B,CAAC;CACJ,CAAA;AAhCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAgChC;AAED,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAClB,2BAAG,SAAS,EAAC,uBAAuB,GAAK,CAC5C,CAAC"}
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@theia/ai-chat-ui",
3
- "version": "1.55.0-next.4+f6ace675e",
3
+ "version": "1.55.0-next.70+cbe6b80f5",
4
4
  "description": "Theia - AI Chat UI Extension",
5
5
  "dependencies": {
6
- "@theia/ai-chat": "1.55.0-next.4+f6ace675e",
7
- "@theia/ai-core": "1.55.0-next.4+f6ace675e",
8
- "@theia/core": "1.55.0-next.4+f6ace675e",
9
- "@theia/editor": "1.55.0-next.4+f6ace675e",
10
- "@theia/editor-preview": "1.55.0-next.4+f6ace675e",
11
- "@theia/filesystem": "1.55.0-next.4+f6ace675e",
12
- "@theia/monaco": "1.55.0-next.4+f6ace675e",
6
+ "@theia/ai-chat": "1.55.0-next.70+cbe6b80f5",
7
+ "@theia/ai-core": "1.55.0-next.70+cbe6b80f5",
8
+ "@theia/core": "1.55.0-next.70+cbe6b80f5",
9
+ "@theia/editor": "1.55.0-next.70+cbe6b80f5",
10
+ "@theia/editor-preview": "1.55.0-next.70+cbe6b80f5",
11
+ "@theia/filesystem": "1.55.0-next.70+cbe6b80f5",
12
+ "@theia/monaco": "1.55.0-next.70+cbe6b80f5",
13
13
  "@theia/monaco-editor-core": "1.83.101",
14
- "@theia/workspace": "1.55.0-next.4+f6ace675e",
14
+ "@theia/workspace": "1.55.0-next.70+cbe6b80f5",
15
15
  "minimatch": "^5.1.0",
16
16
  "tslib": "^2.6.2",
17
17
  "uuid": "^9.0.1"
@@ -50,10 +50,10 @@
50
50
  "watch": "theiaext watch"
51
51
  },
52
52
  "devDependencies": {
53
- "@theia/ext-scripts": "1.54.0"
53
+ "@theia/ext-scripts": "1.55.0"
54
54
  },
55
55
  "nyc": {
56
56
  "extends": "../../configs/nyc.json"
57
57
  },
58
- "gitHead": "f6ace675e712c3d2227d1cd19e9c905a6e4d9ad6"
58
+ "gitHead": "cbe6b80f5fb3ffcdf031ce1f50c69497df321e03"
59
59
  }
@@ -126,6 +126,9 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
126
126
  const lastRequest = allRequests.length === 0 ? undefined : allRequests[allRequests.length - 1];
127
127
 
128
128
  const createInputElement = async () => {
129
+ const paddingTop = 8;
130
+ const lineHeight = 20;
131
+ const maxHeight = 240;
129
132
  const resource = await props.untitledResourceResolver.createUntitledResource('', CHAT_VIEW_LANGUAGE_EXTENSION);
130
133
  const editor = await props.editorProvider.createInline(resource.uri, editorContainerRef.current!, {
131
134
  language: CHAT_VIEW_LANGUAGE_EXTENSION,
@@ -133,7 +136,7 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
133
136
  codeLens: false,
134
137
  inlayHints: { enabled: 'off' },
135
138
  hover: { enabled: false },
136
- autoSizing: true,
139
+ autoSizing: false, // we handle the sizing ourselves
137
140
  scrollBeyondLastLine: false,
138
141
  scrollBeyondLastColumn: 0,
139
142
  minHeight: 1,
@@ -144,8 +147,8 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
144
147
  scrollbar: { horizontal: 'hidden' },
145
148
  automaticLayout: true,
146
149
  lineNumbers: 'off',
147
- lineHeight: 20,
148
- padding: { top: 8 },
150
+ lineHeight,
151
+ padding: { top: paddingTop },
149
152
  suggest: {
150
153
  showIcons: true,
151
154
  showSnippets: false,
@@ -158,8 +161,23 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
158
161
  stickyScroll: { enabled: false },
159
162
  });
160
163
 
161
- editor.getControl().onDidChangeModelContent(() => {
162
- layout();
164
+ if (editorContainerRef.current) {
165
+ editorContainerRef.current.style.height = (lineHeight + (2 * paddingTop)) + 'px';
166
+ }
167
+
168
+ const updateEditorHeight = () => {
169
+ if (editorContainerRef.current) {
170
+ const contentHeight = editor.getControl().getContentHeight() + paddingTop;
171
+ editorContainerRef.current.style.height = `${Math.min(contentHeight, maxHeight)}px`;
172
+ }
173
+ };
174
+ editor.getControl().onDidChangeModelContent(updateEditorHeight);
175
+ const resizeObserver = new ResizeObserver(updateEditorHeight);
176
+ if (editorContainerRef.current) {
177
+ resizeObserver.observe(editorContainerRef.current);
178
+ }
179
+ editor.getControl().onDidDispose(() => {
180
+ resizeObserver.disconnect();
163
181
  });
164
182
 
165
183
  editor.getControl().onContextMenu(e =>
@@ -193,19 +211,6 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
193
211
  if (editorRef.current) {
194
212
  editorRef.current.document.textEditorModel.setValue('');
195
213
  }
196
- };
197
-
198
- function layout(): void {
199
- if (editorRef.current === undefined) {
200
- return;
201
- }
202
- const hiddenClass = 'hidden';
203
- const editor = editorRef.current;
204
- if (editor.document.textEditorModel.getValue().length > 0) {
205
- placeholderRef.current?.classList.add(hiddenClass);
206
- } else {
207
- placeholderRef.current?.classList.remove(hiddenClass);
208
- }
209
214
  }
210
215
 
211
216
  const onKeyDown = React.useCallback((event: React.KeyboardEvent) => {
@@ -218,10 +223,20 @@ const ChatInput: React.FunctionComponent<ChatInputProperties> = (props: ChatInpu
218
223
  }
219
224
  }, [props.isEnabled]);
220
225
 
226
+ const handleInputFocus = () => {
227
+ placeholderRef.current?.classList.add('hidden');
228
+ };
229
+
230
+ const handleInputBlur = () => {
231
+ if (!editorRef.current?.getControl().getValue()) {
232
+ placeholderRef.current?.classList.remove('hidden');
233
+ }
234
+ };
235
+
221
236
  return <div className='theia-ChatInput'>
222
237
  <div className='theia-ChatInput-Editor-Box'>
223
- <div className='theia-ChatInput-Editor' ref={editorContainerRef} onKeyDown={onKeyDown}>
224
- <div ref={placeholderRef} className='theia-ChatInput-Editor-Placeholder'>Enter your question</div>
238
+ <div className='theia-ChatInput-Editor' ref={editorContainerRef} onKeyDown={onKeyDown} onFocus={handleInputFocus} onBlur={handleInputBlur}>
239
+ <div ref={placeholderRef} className='theia-ChatInput-Editor-Placeholder'>Ask a question</div>
225
240
  </div>
226
241
  </div>
227
242
  <div className="theia-ChatInputOptions">
@@ -128,7 +128,7 @@ const CopyToClipboardButton = (props: { code: string, clipboardService: Clipboar
128
128
  const copyCodeToClipboard = React.useCallback(() => {
129
129
  clipboardService.writeText(code);
130
130
  }, [code, clipboardService]);
131
- return <button className='theia-button main' onClick={copyCodeToClipboard}>Copy</button>;
131
+ return <div className='button codicon codicon-copy' title='Copy' role='button' onClick={copyCodeToClipboard}></div>;
132
132
  };
133
133
 
134
134
  const InsertCodeAtCursorButton = (props: { code: string, editorManager: EditorManager }) => {
@@ -150,7 +150,7 @@ const InsertCodeAtCursorButton = (props: { code: string, editorManager: EditorMa
150
150
  }]);
151
151
  }
152
152
  }, [code, editorManager]);
153
- return <button className='theia-button main' onClick={insertCode}>Insert at Cursor</button>;
153
+ return <div className='button codicon codicon-insert' title='Insert at Cursor' role='button' onClick={insertCode}></div>;
154
154
  };
155
155
 
156
156
  /**
@@ -174,9 +174,13 @@ export const CodeWrapper = (props: {
174
174
  autoSizing: true,
175
175
  scrollBeyondLastLine: false,
176
176
  scrollBeyondLastColumn: 0,
177
- renderFinalNewline: 'on',
177
+ renderFinalNewline: 'off',
178
178
  maxHeight: -1,
179
- scrollbar: { vertical: 'hidden', horizontal: 'hidden' },
179
+ scrollbar: {
180
+ vertical: 'hidden',
181
+ alwaysConsumeMouseWheel: false
182
+ },
183
+ wordWrap: 'off',
180
184
  codeLens: false,
181
185
  inlayHints: { enabled: 'off' },
182
186
  hover: { enabled: false }
@@ -203,6 +207,5 @@ export const CodeWrapper = (props: {
203
207
 
204
208
  editorRef.current?.resizeToFit();
205
209
 
206
- return <div ref={ref}></div>;
210
+ return <div className='theia-CodeWrapper' ref={ref}></div>;
207
211
  };
208
-
@@ -34,7 +34,7 @@ export class ToolCallPartRenderer implements ChatResponsePartRenderer<ToolCallCh
34
34
  {response.finished ?
35
35
  <details>
36
36
  <summary>Ran {response.name}</summary>
37
- <p>{response.result}</p>
37
+ <pre>{this.tryPrettyPrintJson(response)}</pre>
38
38
  </details>
39
39
  : <span><Spinner /> Running [{response.name}]</span>
40
40
  }
@@ -42,6 +42,17 @@ export class ToolCallPartRenderer implements ChatResponsePartRenderer<ToolCallCh
42
42
 
43
43
  }
44
44
 
45
+ private tryPrettyPrintJson(response: ToolCallChatResponseContent): string | undefined {
46
+ let responseContent = response.result;
47
+ try {
48
+ if (response.result) {
49
+ responseContent = JSON.stringify(JSON.parse(response.result), undefined, 2);
50
+ }
51
+ } catch (e) {
52
+ // fall through
53
+ }
54
+ return responseContent;
55
+ }
45
56
  }
46
57
 
47
58
  const Spinner = () => (
@@ -16,8 +16,7 @@
16
16
  cursor: default;
17
17
  display: flex;
18
18
  flex-direction: column;
19
- gap: 8px;
20
- padding: 16px 20px;
19
+ padding: 16px 20px 6px 20px;
21
20
  user-select: text;
22
21
  -webkit-user-select: text;
23
22
  border-bottom: 1px solid var(--theia-sideBarSectionHeader-border);
@@ -110,16 +109,27 @@ div:last-child > .theia-ChatNode {
110
109
  background-color: var(--theia-toolbar-hoverBackground);
111
110
  }
112
111
 
113
- .theia-ChatNode .rendered-markdown p {
114
- margin: 0 0 16px;
112
+ .theia-ChatNode {
113
+ line-height: 1.3rem;
114
+ }
115
+
116
+ .theia-ChatNode ul,
117
+ .theia-ChatNode ol {
118
+ padding-inline-start: 1rem;
115
119
  }
116
120
 
117
- .theia-ChatNode:last-child .rendered-markdown > :last-child {
121
+ .theia-ChatNode li > p {
122
+ margin-top: 0;
118
123
  margin-bottom: 0;
119
124
  }
120
125
 
121
- .theia-ChatNode .rendered-markdown {
122
- line-height: 1.3rem;
126
+ .theia-ChatNode .theia-CodeWrapper {
127
+ padding: 0.5em;
128
+ padding-bottom: 0;
129
+ background-color: var(--theia-editor-background);
130
+ border-radius: 6px;
131
+ border: var(--theia-border-width) solid var(--theia-checkbox-border);
132
+ font-size: var(--theia-code-font-size);
123
133
  }
124
134
 
125
135
  .chat-input-widget {
@@ -153,6 +163,7 @@ div:last-child > .theia-ChatNode {
153
163
  display: flex;
154
164
  flex-direction: column-reverse;
155
165
  overflow: hidden;
166
+ transition: height 0.05s ease-in-out;
156
167
  }
157
168
 
158
169
  .theia-ChatInput-Editor:has(.monaco-editor.focused) {
@@ -219,7 +230,7 @@ div:last-child > .theia-ChatNode {
219
230
  .theia-CodePartRenderer-root {
220
231
  display: flex;
221
232
  flex-direction: column;
222
- gap: 4px;
233
+ gap: 2px;
223
234
  border: 1px solid var(--theia-input-border);
224
235
  border-radius: 4px;
225
236
  }
@@ -232,11 +243,20 @@ div:last-child > .theia-ChatNode {
232
243
  display: flex;
233
244
  justify-content: space-between;
234
245
  align-items: center;
235
- padding-bottom: 4px;
246
+ padding-left: 2px;
247
+ padding-right: 2px;
236
248
  }
237
249
 
238
- .theia-CodePartRenderer-right button {
239
- margin-left: 4px;
250
+ .theia-CodePartRenderer-right .button {
251
+ margin-left: 2px;
252
+ width: 18px;
253
+ height: 18px;
254
+ padding: 2px;
255
+ border-radius: 5px;
256
+ cursor: pointer;
257
+ }
258
+ .theia-CodePartRenderer-right .button:hover {
259
+ background-color: var(--theia-toolbar-hoverBackground);
240
260
  }
241
261
 
242
262
  .theia-CodePartRenderer-separator {
@@ -249,7 +269,8 @@ div:last-child > .theia-ChatNode {
249
269
  font-weight: normal;
250
270
  color: var(--theia-descriptionForeground);
251
271
  line-height: 20px;
252
- margin-bottom: 6px;
272
+ margin-top: 13px;
273
+ margin-bottom: 13px;
253
274
  cursor: pointer;
254
275
  }
255
276
 
@@ -258,6 +279,16 @@ div:last-child > .theia-ChatNode {
258
279
  color: var(--theia-button-background);
259
280
  }
260
281
 
282
+ .theia-toolCall details pre {
283
+ cursor: text;
284
+ line-height: 1rem;
285
+ margin-top: 0;
286
+ margin-bottom: 0;
287
+ padding: 6px;
288
+ background-color: var(--theia-editor-background);
289
+ overflow: auto;
290
+ }
291
+
261
292
  .theia-ResponseNode-ProgressMessage {
262
293
  font-weight: normal;
263
294
  color: var(--theia-descriptionForeground);