@theia/ai-chat-ui 1.55.0-next.97 → 1.56.0
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/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-chat-ui-frontend-module.js +2 -0
- package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
- package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +3 -2
- package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/markdown-part-renderer.js +5 -3
- package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/question-part-renderer.d.ts +10 -0
- package/lib/browser/chat-response-renderer/question-part-renderer.d.ts.map +1 -0
- package/lib/browser/chat-response-renderer/question-part-renderer.js +43 -0
- package/lib/browser/chat-response-renderer/question-part-renderer.js.map +1 -0
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts +2 -0
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +30 -10
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +4 -0
- package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.js +79 -12
- package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
- package/package.json +11 -11
- package/src/browser/ai-chat-ui-frontend-module.ts +2 -0
- package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +5 -3
- package/src/browser/chat-response-renderer/question-part-renderer.tsx +59 -0
- package/src/browser/chat-response-renderer/toolcall-part-renderer.tsx +38 -9
- package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +133 -11
- package/src/browser/style/index.css +57 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-ui-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;AAE3E,OAAO,mCAAmC,CAAC;;
|
|
1
|
+
{"version":3,"file":"ai-chat-ui-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;AAE3E,OAAO,mCAAmC,CAAC;;AAmB3C,wBAiDG"}
|
|
@@ -34,6 +34,7 @@ const chat_view_language_contribution_1 = require("./chat-view-language-contribu
|
|
|
34
34
|
const chat_view_widget_1 = require("./chat-view-widget");
|
|
35
35
|
const chat_view_widget_toolbar_contribution_1 = require("./chat-view-widget-toolbar-contribution");
|
|
36
36
|
const editor_preview_manager_1 = require("@theia/editor-preview/lib/browser/editor-preview-manager");
|
|
37
|
+
const question_part_renderer_1 = require("./chat-response-renderer/question-part-renderer");
|
|
37
38
|
exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebind) => {
|
|
38
39
|
(0, browser_1.bindViewContribution)(bind, ai_chat_ui_contribution_1.AIChatContribution);
|
|
39
40
|
bind(tab_bar_toolbar_1.TabBarToolbarContribution).toService(ai_chat_ui_contribution_1.AIChatContribution);
|
|
@@ -56,6 +57,7 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
|
|
|
56
57
|
bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.CommandPartRenderer).inSingletonScope();
|
|
57
58
|
bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.ToolCallPartRenderer).inSingletonScope();
|
|
58
59
|
bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.ErrorPartRenderer).inSingletonScope();
|
|
60
|
+
bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(question_part_renderer_1.QuestionPartRenderer).inSingletonScope();
|
|
59
61
|
[core_1.CommandContribution, core_1.MenuContribution].forEach(serviceIdentifier => bind(serviceIdentifier).to(chat_view_contribution_1.ChatViewMenuContribution).inSingletonScope());
|
|
60
62
|
bind(ai_editor_manager_1.AIEditorManager).toSelf().inSingletonScope();
|
|
61
63
|
rebind(browser_2.EditorManager).toService(ai_editor_manager_1.AIEditorManager);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-ui-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-frontend-module.ts"],"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;;AAEhF,sCAA8F;AAC9F,qDAA+G;AAC/G,mFAA0F;AAC1F,4DAA2E;AAC3E,uDAA0D;AAC1D,6CAA2C;AAC3C,uEAA+D;AAC/D,2DAAwD;AACxD,mGAA4F;AAC5F,+EAAyE;AACzE,qEAA8K;AAC9K,kFAGoD;AACpD,qDAA4D;AAC5D,kFAA4E;AAC5E,qEAAoE;AACpE,uFAAiF;AACjF,yDAAoD;AACpD,mGAA4F;AAC5F,qGAAgG;
|
|
1
|
+
{"version":3,"file":"ai-chat-ui-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-frontend-module.ts"],"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;;AAEhF,sCAA8F;AAC9F,qDAA+G;AAC/G,mFAA0F;AAC1F,4DAA2E;AAC3E,uDAA0D;AAC1D,6CAA2C;AAC3C,uEAA+D;AAC/D,2DAAwD;AACxD,mGAA4F;AAC5F,+EAAyE;AACzE,qEAA8K;AAC9K,kFAGoD;AACpD,qDAA4D;AAC5D,kFAA4E;AAC5E,qEAAoE;AACpE,uFAAiF;AACjF,yDAAoD;AACpD,mGAA4F;AAC5F,qGAAgG;AAChG,4FAAuF;AAEvF,kBAAe,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;IACnE,IAAA,8BAAoB,EAAC,IAAI,EAAE,4CAAkB,CAAC,CAAC;IAC/C,IAAI,CAAC,2CAAyB,CAAC,CAAC,SAAS,CAAC,4CAAkB,CAAC,CAAC;IAE9D,IAAA,+BAAwB,EAAC,IAAI,EAAE,sDAAwB,CAAC,CAAC;IAEzD,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEzB,IAAI,CAAC,qCAAiB,CAAC,CAAC,MAAM,EAAE,CAAC;IACjC,IAAI,CAAC,uBAAa,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QACnD,EAAE,EAAE,qCAAiB,CAAC,EAAE;QACxB,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,qCAAiB,CAAC;KACvD,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEvB,IAAI,CAAC,0CAAkB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAC1C,IAAA,yCAAwB,EAAC,GAAG,CAAC,SAAS,CAAC,CAC1C,CAAC;IACF,IAAI,CAAC,uBAAa,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;QACnD,EAAE,EAAE,0CAAkB,CAAC,EAAE;QACzB,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,0CAAkB,CAAC;KACxD,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEvB,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,qDAA4B,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnF,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,0CAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACxE,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,6CAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC3E,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,yCAAgB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACvE,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,4CAAmB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC1E,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,6CAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC3E,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,0CAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACxE,IAAI,CAAC,sDAAwB,CAAC,CAAC,EAAE,CAAC,6CAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC3E,CAAC,0BAAmB,EAAE,uBAAgB,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAChE,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,iDAAwB,CAAC,CAAC,gBAAgB,EAAE,CAC1E,CAAC;IAEF,IAAI,CAAC,mCAAe,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAClD,MAAM,CAAC,uBAAa,CAAC,CAAC,SAAS,CAAC,mCAAe,CAAC,CAAC;IACjD,MAAM,CAAC,6CAAoB,CAAC,CAAC,SAAS,CAAC,mCAAe,CAAC,CAAC;IAExD,IAAA,+BAAwB,EAAC,IAAI,EAAE,6CAAyB,CAAC,CAAC;IAC1D,IAAI,CAAC,6CAAyB,CAAC,CAAC,EAAE,CAAC,2CAAuB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/E,IAAI,CAAC,6CAAyB,CAAC,CAAC,EAAE,CAAC,kDAA8B,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACtF,IAAI,CAAC,6CAAyB,CAAC,CAAC,EAAE,CAAC,iDAA6B,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAErF,IAAI,CAAC,yEAAiC,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACpE,IAAI,CAAC,2CAAyB,CAAC,CAAC,SAAS,CAAC,yEAAiC,CAAC,CAAC;IAE7E,IAAI,CAAC,yCAA+B,CAAC,CAAC,EAAE,CAAC,8DAA4B,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAE1F,IAAA,+BAAwB,EAAC,IAAI,EAAE,yEAAiC,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEH,SAAS,kBAAkB,CAAC,IAAqB;IAC7C,IAAI,cAA0C,CAAC;IAC/C,IAAI,CAAC,iCAAc,CAAC,CAAC,MAAM,EAAE,CAAC;IAE9B,IAAI,CAAC,uBAAa,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3C,EAAE,EAAE,iCAAc,CAAC,EAAE;QACrB,YAAY,EAAE,GAAG,EAAE;YACf,IAAI,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,UAAU,MAAK,KAAK,EAAE,CAAC;gBACvC,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAiB,iCAAc,CAAC,CAAC;YAC3E,CAAC;YACD,OAAO,cAAc,CAAC;QAC1B,CAAC;KACJ,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAC3B,CAAC"}
|
|
@@ -13,12 +13,13 @@ export declare class MarkdownPartRenderer implements ChatResponsePartRenderer<Ma
|
|
|
13
13
|
/**
|
|
14
14
|
* This hook uses markdown-it directly to render markdown.
|
|
15
15
|
* The reason to use markdown-it directly is that the MarkdownRenderer is
|
|
16
|
-
*
|
|
16
|
+
* overridden by theia with a monaco version. This monaco version strips all html
|
|
17
17
|
* tags from the markdown with empty content.
|
|
18
18
|
* This leads to unexpected behavior when rendering markdown with html tags.
|
|
19
19
|
*
|
|
20
20
|
* @param markdown the string to render as markdown
|
|
21
|
+
* @param skipSurroundingParagraph whether to remove a surrounding paragraph element (default: false)
|
|
21
22
|
* @returns the ref to use in an element to render the markdown
|
|
22
23
|
*/
|
|
23
|
-
export declare const useMarkdownRendering: (markdown: string | MarkdownString) => React.MutableRefObject<HTMLDivElement | null>;
|
|
24
|
+
export declare const useMarkdownRendering: (markdown: string | MarkdownString, skipSurroundingParagraph?: boolean) => React.MutableRefObject<HTMLDivElement | null>;
|
|
24
25
|
//# sourceMappingURL=markdown-part-renderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/markdown-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EACH,mBAAmB,EACnB,gCAAgC,EAChC,2BAA2B,EAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,SAAS,EAAqB,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,qBACa,oBAAqB,YAAW,wBAAwB,CAAC,2BAA2B,GAAG,gCAAgC,CAAC;IACjI,SAAS,CAAC,QAAQ,CAAC,UAAU,aAAgB;IAC7C,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAShD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,GAAG,gCAAgC,GAAG,SAAS;CAW9F;AAQD
|
|
1
|
+
{"version":3,"file":"markdown-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/markdown-part-renderer.tsx"],"names":[],"mappings":";AAgBA,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EACH,mBAAmB,EACnB,gCAAgC,EAChC,2BAA2B,EAC9B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,SAAS,EAAqB,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,KAAK,UAAU,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,qBACa,oBAAqB,YAAW,wBAAwB,CAAC,2BAA2B,GAAG,gCAAgC,CAAC;IACjI,SAAS,CAAC,QAAQ,CAAC,UAAU,aAAgB;IAC7C,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAShD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,GAAG,gCAAgC,GAAG,SAAS;CAW9F;AAQD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,aAAc,MAAM,GAAG,cAAc,6BAA4B,OAAO,kDAoBxG,CAAC"}
|
|
@@ -57,14 +57,15 @@ const MarkdownRender = ({ response }) => {
|
|
|
57
57
|
/**
|
|
58
58
|
* This hook uses markdown-it directly to render markdown.
|
|
59
59
|
* The reason to use markdown-it directly is that the MarkdownRenderer is
|
|
60
|
-
*
|
|
60
|
+
* overridden by theia with a monaco version. This monaco version strips all html
|
|
61
61
|
* tags from the markdown with empty content.
|
|
62
62
|
* This leads to unexpected behavior when rendering markdown with html tags.
|
|
63
63
|
*
|
|
64
64
|
* @param markdown the string to render as markdown
|
|
65
|
+
* @param skipSurroundingParagraph whether to remove a surrounding paragraph element (default: false)
|
|
65
66
|
* @returns the ref to use in an element to render the markdown
|
|
66
67
|
*/
|
|
67
|
-
const useMarkdownRendering = (markdown) => {
|
|
68
|
+
const useMarkdownRendering = (markdown, skipSurroundingParagraph = false) => {
|
|
68
69
|
// eslint-disable-next-line no-null/no-null
|
|
69
70
|
const ref = (0, react_1.useRef)(null);
|
|
70
71
|
const markdownString = typeof markdown === 'string' ? markdown : markdown.value;
|
|
@@ -72,7 +73,8 @@ const useMarkdownRendering = (markdown) => {
|
|
|
72
73
|
var _a, _b;
|
|
73
74
|
const markdownIt = markdownit();
|
|
74
75
|
const host = document.createElement('div');
|
|
75
|
-
|
|
76
|
+
// markdownIt always puts the content in a paragraph element, so we remove it if we don't want it
|
|
77
|
+
const html = skipSurroundingParagraph ? markdownIt.render(markdownString).replace(/^<p>|<\/p>|<p><\/p>$/g, '') : markdownIt.render(markdownString);
|
|
76
78
|
host.innerHTML = DOMPurify.sanitize(html, {
|
|
77
79
|
ALLOW_UNKNOWN_PROTOCOLS: true // DOMPurify usually strips non http(s) links from hrefs
|
|
78
80
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/markdown-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,sDAImC;AACnC,oDAAwE;AACxE,kDAAkD;AAClD,6DAA6D;AAC7D,0DAA0D;AAInD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAA1B;QACgB,eAAU,GAAG,UAAU,EAAE,CAAC;IAqBjD,CAAC;IApBG,SAAS,CAAC,QAA6B;QACnC,IAAI,oCAA2B,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,IAAI,yCAAgC,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,MAAM,CAAC,QAAwE;QAC3E,6EAA6E;QAC7E,IAAI,yCAAgC,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,yBAAyB;YACzB,2CAA2C;YAC3C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,oBAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAC;IAClD,CAAC;CAEJ,CAAA;AAtBY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAsBhC;AAED,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAgF,EAAE,EAAE;IAClH,MAAM,GAAG,GAAG,IAAA,4BAAoB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,OAAO,6BAAK,GAAG,EAAE,GAAG,GAAQ,CAAC;AACjC,CAAC,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"markdown-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/markdown-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,sDAImC;AACnC,oDAAwE;AACxE,kDAAkD;AAClD,6DAA6D;AAC7D,0DAA0D;AAInD,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAA1B;QACgB,eAAU,GAAG,UAAU,EAAE,CAAC;IAqBjD,CAAC;IApBG,SAAS,CAAC,QAA6B;QACnC,IAAI,oCAA2B,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACd,CAAC;QACD,IAAI,yCAAgC,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IACD,MAAM,CAAC,QAAwE;QAC3E,6EAA6E;QAC7E,IAAI,yCAAgC,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,yBAAyB;YACzB,2CAA2C;YAC3C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,oBAAC,cAAc,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAAC;IAClD,CAAC;CAEJ,CAAA;AAtBY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAsBhC;AAED,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAgF,EAAE,EAAE;IAClH,MAAM,GAAG,GAAG,IAAA,4BAAoB,EAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,OAAO,6BAAK,GAAG,EAAE,GAAG,GAAQ,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACI,MAAM,oBAAoB,GAAG,CAAC,QAAiC,EAAE,2BAAoC,KAAK,EAAE,EAAE;IACjH,2CAA2C;IAC3C,MAAM,GAAG,GAAG,IAAA,cAAM,EAAwB,IAAI,CAAC,CAAC;IAChD,MAAM,cAAc,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;IAChF,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACX,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3C,iGAAiG;QACjG,MAAM,IAAI,GAAG,wBAAwB,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACnJ,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE;YACtC,uBAAuB,EAAE,IAAI,CAAC,wDAAwD;SACzF,CAAC,CAAC;QACH,OAAO,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,0CAAE,UAAU,EAAE,CAAC;YAC9B,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpD,CAAC;QAED,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,0CAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AApBW,QAAA,oBAAoB,wBAoB/B"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ChatResponseContent, QuestionResponseContent } from '@theia/ai-chat';
|
|
3
|
+
import { ReactNode } from '@theia/core/shared/react';
|
|
4
|
+
import { ChatResponsePartRenderer } from '../chat-response-part-renderer';
|
|
5
|
+
import { ResponseNode } from '../chat-tree-view';
|
|
6
|
+
export declare class QuestionPartRenderer implements ChatResponsePartRenderer<QuestionResponseContent> {
|
|
7
|
+
canHandle(response: ChatResponseContent): number;
|
|
8
|
+
render(question: QuestionResponseContent, node: ResponseNode): ReactNode;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=question-part-renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"question-part-renderer.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/question-part-renderer.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,qBACa,oBACT,YAAW,wBAAwB,CAAC,uBAAuB,CAAC;IAE5D,SAAS,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM;IAOhD,MAAM,CAAC,QAAQ,EAAE,uBAAuB,EAAE,IAAI,EAAE,YAAY,GAAG,SAAS;CAyB3E"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QuestionPartRenderer = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
// *****************************************************************************
|
|
6
|
+
// Copyright (C) 2024 EclipseSource GmbH.
|
|
7
|
+
//
|
|
8
|
+
// This program and the accompanying materials are made available under the
|
|
9
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
10
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
11
|
+
//
|
|
12
|
+
// This Source Code may also be made available under the following Secondary
|
|
13
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
14
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
15
|
+
// with the GNU Classpath Exception which is available at
|
|
16
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
17
|
+
//
|
|
18
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
19
|
+
// *****************************************************************************
|
|
20
|
+
const ai_chat_1 = require("@theia/ai-chat");
|
|
21
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
22
|
+
const React = require("@theia/core/shared/react");
|
|
23
|
+
let QuestionPartRenderer = class QuestionPartRenderer {
|
|
24
|
+
canHandle(response) {
|
|
25
|
+
if (ai_chat_1.QuestionResponseContent.is(response)) {
|
|
26
|
+
return 10;
|
|
27
|
+
}
|
|
28
|
+
return -1;
|
|
29
|
+
}
|
|
30
|
+
render(question, node) {
|
|
31
|
+
return (React.createElement("div", { className: "theia-QuestionPartRenderer-root" },
|
|
32
|
+
React.createElement("div", { className: "theia-QuestionPartRenderer-question" }, question.question),
|
|
33
|
+
React.createElement("div", { className: "theia-QuestionPartRenderer-options" }, question.options.map((option, index) => (React.createElement("button", { className: `theia-button theia-QuestionPartRenderer-option ${question.selectedOption === option ? 'selected' : ''}`, onClick: () => {
|
|
34
|
+
question.selectedOption = option;
|
|
35
|
+
question.handler(option);
|
|
36
|
+
}, disabled: question.selectedOption !== undefined || !node.response.isWaitingForInput, key: index }, option.text))))));
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
exports.QuestionPartRenderer = QuestionPartRenderer;
|
|
40
|
+
exports.QuestionPartRenderer = QuestionPartRenderer = tslib_1.__decorate([
|
|
41
|
+
(0, inversify_1.injectable)()
|
|
42
|
+
], QuestionPartRenderer);
|
|
43
|
+
//# sourceMappingURL=question-part-renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"question-part-renderer.js","sourceRoot":"","sources":["../../../src/browser/chat-response-renderer/question-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;AAChF,4CAA8E;AAC9E,4DAA0D;AAC1D,kDAAkD;AAM3C,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAG7B,SAAS,CAAC,QAA6B;QACnC,IAAI,iCAAuB,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAED,MAAM,CAAC,QAAiC,EAAE,IAAkB;QACxD,OAAO,CACH,6BAAK,SAAS,EAAC,iCAAiC;YAC5C,6BAAK,SAAS,EAAC,qCAAqC,IAAE,QAAQ,CAAC,QAAQ,CAAO;YAC9E,6BAAK,SAAS,EAAC,oCAAoC,IAE3C,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CACpC,gCACI,SAAS,EAAE,kDAAkD,QAAQ,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,EACnH,OAAO,EAAE,GAAG,EAAE;oBACV,QAAQ,CAAC,cAAc,GAAG,MAAM,CAAC;oBACjC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC,EACD,QAAQ,EAAE,QAAQ,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EACnF,GAAG,EAAE,KAAK,IAET,MAAM,CAAC,IAAI,CACP,CACZ,CAAC,CAEJ,CACJ,CACT,CAAC;IACN,CAAC;CAEJ,CAAA;AAnCY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAmChC"}
|
|
@@ -5,6 +5,8 @@ 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
|
+
protected renderCollapsibleArguments(args: string | undefined): ReactNode;
|
|
9
|
+
private prettyPrintArgs;
|
|
8
10
|
private tryPrettyPrintJson;
|
|
9
11
|
}
|
|
10
12
|
//# 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;
|
|
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;IAOhD,MAAM,CAAC,QAAQ,EAAE,2BAA2B,GAAG,SAAS;IAmBxD,SAAS,CAAC,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAazE,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,kBAAkB;CAW7B"}
|
|
@@ -28,17 +28,37 @@ let ToolCallPartRenderer = class ToolCallPartRenderer {
|
|
|
28
28
|
return -1;
|
|
29
29
|
}
|
|
30
30
|
render(response) {
|
|
31
|
-
return React.createElement("h4", { className: 'theia-toolCall' }, response.finished ?
|
|
32
|
-
React.createElement("
|
|
33
|
-
|
|
34
|
-
"Ran ",
|
|
35
|
-
response.name),
|
|
36
|
-
React.createElement("pre", null, this.tryPrettyPrintJson(response)))
|
|
37
|
-
: React.createElement("span", null,
|
|
38
|
-
React.createElement(Spinner, null),
|
|
39
|
-
" Running [",
|
|
31
|
+
return (React.createElement("h4", { className: 'theia-toolCall' }, response.finished ? (React.createElement("details", null,
|
|
32
|
+
React.createElement("summary", null,
|
|
33
|
+
"Ran ",
|
|
40
34
|
response.name,
|
|
41
|
-
"
|
|
35
|
+
"(",
|
|
36
|
+
this.renderCollapsibleArguments(response.arguments),
|
|
37
|
+
")"),
|
|
38
|
+
React.createElement("pre", null, this.tryPrettyPrintJson(response)))) : (React.createElement("span", null,
|
|
39
|
+
React.createElement(Spinner, null),
|
|
40
|
+
" Running ",
|
|
41
|
+
response.name,
|
|
42
|
+
"(",
|
|
43
|
+
this.renderCollapsibleArguments(response.arguments),
|
|
44
|
+
")"))));
|
|
45
|
+
}
|
|
46
|
+
renderCollapsibleArguments(args) {
|
|
47
|
+
if (!args || !args.trim() || args.trim() === '{}') {
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
50
|
+
return (React.createElement("details", { className: "collapsible-arguments" },
|
|
51
|
+
React.createElement("summary", { className: "collapsible-arguments-summary" }, "..."),
|
|
52
|
+
React.createElement("span", null, this.prettyPrintArgs(args))));
|
|
53
|
+
}
|
|
54
|
+
prettyPrintArgs(args) {
|
|
55
|
+
try {
|
|
56
|
+
return JSON.stringify(JSON.parse(args), undefined, 2);
|
|
57
|
+
}
|
|
58
|
+
catch (e) {
|
|
59
|
+
// fall through
|
|
60
|
+
return args;
|
|
61
|
+
}
|
|
42
62
|
}
|
|
43
63
|
tryPrettyPrintJson(response) {
|
|
44
64
|
let responseContent = response.result;
|
|
@@ -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;
|
|
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;IAED,MAAM,CAAC,QAAqC;QACxC,OAAO,CACH,4BAAI,SAAS,EAAC,gBAAgB,IACzB,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CACjB;YACI;;gBAAc,QAAQ,CAAC,IAAI;;gBACrB,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC/C;YACV,iCAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAO,CACxC,CACb,CAAC,CAAC,CAAC,CACA;YACI,oBAAC,OAAO,OAAG;;YAAU,QAAQ,CAAC,IAAI;;YAAG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACrF,CACV,CACA,CACR,CAAC;IACN,CAAC;IAES,0BAA0B,CAAC,IAAwB;QACzD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,CACH,iCAAS,SAAS,EAAC,uBAAuB;YACtC,iCAAS,SAAS,EAAC,+BAA+B,UAAc;YAChE,kCAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAQ,CACnC,CACb,CAAC;IACN,CAAC;IAEO,eAAe,CAAC,IAAY;QAChC,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,eAAe;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,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;AA7DY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA6DhC;AAED,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAClB,2BAAG,SAAS,EAAC,uBAAuB,GAAK,CAC5C,CAAC"}
|
|
@@ -5,6 +5,7 @@ import { ContextMenuRenderer, NodeProps, TreeModel, TreeNode, TreeProps, TreeWid
|
|
|
5
5
|
import * as React from '@theia/core/shared/react';
|
|
6
6
|
import { ChatNodeToolbarActionContribution } from '../chat-node-toolbar-action-contribution';
|
|
7
7
|
import { ChatResponsePartRenderer } from '../chat-response-part-renderer';
|
|
8
|
+
import { AIVariableService } from '@theia/ai-core';
|
|
8
9
|
export interface RequestNode extends TreeNode {
|
|
9
10
|
request: ChatRequestModel;
|
|
10
11
|
}
|
|
@@ -19,7 +20,9 @@ export declare class ChatViewTreeWidget extends TreeWidget {
|
|
|
19
20
|
protected readonly chatResponsePartRenderers: ContributionProvider<ChatResponsePartRenderer<ChatResponseContent>>;
|
|
20
21
|
protected readonly chatNodeToolbarActionContributions: ContributionProvider<ChatNodeToolbarActionContribution>;
|
|
21
22
|
protected chatAgentService: ChatAgentService;
|
|
23
|
+
protected readonly variableService: AIVariableService;
|
|
22
24
|
private commandRegistry;
|
|
25
|
+
private hoverService;
|
|
23
26
|
protected _shouldScrollToEnd: boolean;
|
|
24
27
|
protected isEnabled: boolean;
|
|
25
28
|
set shouldScrollToEnd(shouldScrollToEnd: boolean);
|
|
@@ -42,6 +45,7 @@ export declare class ChatViewTreeWidget extends TreeWidget {
|
|
|
42
45
|
protected renderNode(node: TreeNode, props: NodeProps): React.ReactNode;
|
|
43
46
|
private renderAgent;
|
|
44
47
|
private getAgentLabel;
|
|
48
|
+
private getAgent;
|
|
45
49
|
private getAgentIconClassName;
|
|
46
50
|
private renderDetail;
|
|
47
51
|
private renderChatRequest;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-view-tree-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-tree-view/chat-view-tree-widget.tsx"],"names":[],"mappings":";AAeA,OAAO,
|
|
1
|
+
{"version":3,"file":"chat-view-tree-widget.d.ts","sourceRoot":"","sources":["../../../src/browser/chat-tree-view/chat-view-tree-widget.tsx"],"names":[],"mappings":";AAeA,OAAO,EAEH,gBAAgB,EAChB,SAAS,EAET,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EAGpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAmB,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAIH,mBAAmB,EAInB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,SAAS,EACT,UAAU,EACb,MAAM,yBAAyB,CAAC;AAOjC,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,iCAAiC,EAAE,MAAM,0CAA0C,CAAC;AAC7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGnD,MAAM,WAAW,WAAY,SAAQ,QAAQ;IACzC,OAAO,EAAE,gBAAgB,CAAA;CAC5B;AACD,eAAO,MAAM,aAAa,SAAU,QAAQ,wBAA2C,CAAC;AAGxF,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC1C,QAAQ,EAAE,iBAAiB,CAAA;CAC9B;AACD,eAAO,MAAM,cAAc,SAAU,QAAQ,yBAA6C,CAAC;AAM3F,qBACa,kBAAmB,SAAQ,UAAU;IAC9C,MAAM,CAAC,QAAQ,CAAC,EAAE,sBAAsB;IACxC,MAAM,CAAC,QAAQ,CAAC,YAAY,WAA8B;IAG1D,SAAS,CAAC,QAAQ,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,wBAAwB,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAGlH,SAAS,CAAC,QAAQ,CAAC,kCAAkC,EAAE,oBAAoB,CAAC,iCAAiC,CAAC,CAAC;IAG/G,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAGtD,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,YAAY,CAAe;IAEnC,SAAS,CAAC,kBAAkB,UAAQ;IAEpC,SAAS,CAAC,SAAS,UAAS;IAE5B,IAAI,iBAAiB,CAAC,iBAAiB,EAAE,OAAO,EAG/C;IAED,IAAI,iBAAiB,IAAI,OAAO,CAE/B;gBAGsB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,SAAS,EACN,mBAAmB,EAAE,mBAAmB;cAiBtD,IAAI,IAAI,IAAI;IAOxB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAKtB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,CAAC,SAAS;IAOhE,OAAO,CAAC,qBAAqB;IAiD7B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACI,cAAc,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;cAiB9B,cAAc,IAAI,MAAM,GAAG,SAAS;YAOzC,iBAAiB;cAYZ,UAAU,CACzB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,SAAS,GACjB,KAAK,CAAC,SAAS;IAelB,OAAO,CAAC,WAAW;IAuDnB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,2BAA2B;IAgBnC,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;CAQtG"}
|
|
@@ -26,6 +26,7 @@ const React = require("@theia/core/shared/react");
|
|
|
26
26
|
const chat_node_toolbar_action_contribution_1 = require("../chat-node-toolbar-action-contribution");
|
|
27
27
|
const chat_response_part_renderer_1 = require("../chat-response-part-renderer");
|
|
28
28
|
const markdown_part_renderer_1 = require("../chat-response-renderer/markdown-part-renderer");
|
|
29
|
+
const ai_core_1 = require("@theia/ai-core");
|
|
29
30
|
const isRequestNode = (node) => 'request' in node;
|
|
30
31
|
exports.isRequestNode = isRequestNode;
|
|
31
32
|
const isResponseNode = (node) => 'response' in node;
|
|
@@ -184,18 +185,31 @@ let ChatViewTreeWidget = ChatViewTreeWidget_1 = class ChatViewTreeWidget extends
|
|
|
184
185
|
this.renderDetail(node)));
|
|
185
186
|
}
|
|
186
187
|
renderAgent(node) {
|
|
188
|
+
var _a;
|
|
187
189
|
const inProgress = (0, exports.isResponseNode)(node) && !node.response.isComplete && !node.response.isCanceled && !node.response.isError;
|
|
190
|
+
const waitingForInput = (0, exports.isResponseNode)(node) && node.response.isWaitingForInput;
|
|
188
191
|
const toolbarContributions = !inProgress
|
|
189
192
|
? this.chatNodeToolbarActionContributions.getContributions()
|
|
190
193
|
.flatMap(c => c.getToolbarActions(node))
|
|
191
194
|
.filter(action => this.commandRegistry.isEnabled(action.commandId, node))
|
|
192
195
|
.sort((a, b) => { var _a, _b; return ((_a = a.priority) !== null && _a !== void 0 ? _a : 0) - ((_b = b.priority) !== null && _b !== void 0 ? _b : 0); })
|
|
193
196
|
: [];
|
|
197
|
+
const agentLabel = React.createRef();
|
|
198
|
+
const agentDescription = (_a = this.getAgent(node)) === null || _a === void 0 ? void 0 : _a.description;
|
|
194
199
|
return React.createElement(React.Fragment, null,
|
|
195
200
|
React.createElement("div", { className: 'theia-ChatNodeHeader' },
|
|
196
201
|
React.createElement("div", { className: `theia-AgentAvatar ${this.getAgentIconClassName(node)}` }),
|
|
197
|
-
React.createElement("h3", { className: 'theia-AgentLabel'
|
|
202
|
+
React.createElement("h3", { ref: agentLabel, className: 'theia-AgentLabel', onMouseEnter: () => {
|
|
203
|
+
if (agentDescription) {
|
|
204
|
+
this.hoverService.requestHover({
|
|
205
|
+
content: agentDescription,
|
|
206
|
+
target: agentLabel.current,
|
|
207
|
+
position: 'right'
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
} }, this.getAgentLabel(node)),
|
|
198
211
|
inProgress && React.createElement("span", { className: 'theia-ChatContentInProgress' }, "Generating"),
|
|
212
|
+
inProgress && waitingForInput && React.createElement("span", { className: 'theia-ChatContentInProgress' }, "Waiting for input"),
|
|
199
213
|
React.createElement("div", { className: 'theia-ChatNodeToolbar' }, !inProgress &&
|
|
200
214
|
toolbarContributions.length > 0 &&
|
|
201
215
|
toolbarContributions.map(action => React.createElement("span", { key: action.commandId, className: `theia-ChatNodeToolbarAction ${action.icon}`, title: action.tooltip, onClick: e => {
|
|
@@ -209,13 +223,18 @@ let ChatViewTreeWidget = ChatViewTreeWidget_1 = class ChatViewTreeWidget extends
|
|
|
209
223
|
}, role: 'button' })))));
|
|
210
224
|
}
|
|
211
225
|
getAgentLabel(node) {
|
|
212
|
-
var _a;
|
|
226
|
+
var _a, _b;
|
|
213
227
|
if ((0, exports.isRequestNode)(node)) {
|
|
214
228
|
// TODO find user name
|
|
215
229
|
return 'You';
|
|
216
230
|
}
|
|
217
|
-
|
|
218
|
-
|
|
231
|
+
return (_b = (_a = this.getAgent(node)) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : 'AI';
|
|
232
|
+
}
|
|
233
|
+
getAgent(node) {
|
|
234
|
+
if ((0, exports.isRequestNode)(node)) {
|
|
235
|
+
return undefined;
|
|
236
|
+
}
|
|
237
|
+
return node.response.agentId ? this.chatAgentService.getAgent(node.response.agentId) : undefined;
|
|
219
238
|
}
|
|
220
239
|
getAgentIconClassName(node) {
|
|
221
240
|
var _a;
|
|
@@ -235,14 +254,23 @@ let ChatViewTreeWidget = ChatViewTreeWidget_1 = class ChatViewTreeWidget extends
|
|
|
235
254
|
;
|
|
236
255
|
}
|
|
237
256
|
renderChatRequest(node) {
|
|
238
|
-
return React.createElement(ChatRequestRender, { node: node });
|
|
257
|
+
return React.createElement(ChatRequestRender, { node: node, hoverService: this.hoverService, chatAgentService: this.chatAgentService, variableService: this.variableService });
|
|
239
258
|
}
|
|
240
259
|
renderChatResponse(node) {
|
|
241
260
|
return (React.createElement("div", { className: 'theia-ResponseNode' },
|
|
242
261
|
!node.response.isComplete
|
|
243
262
|
&& node.response.response.content.length === 0
|
|
244
|
-
&& node.response.progressMessages
|
|
245
|
-
|
|
263
|
+
&& node.response.progressMessages
|
|
264
|
+
.filter(c => c.show === 'untilFirstContent')
|
|
265
|
+
.map((c, i) => React.createElement(ProgressMessage, { ...c, key: `${node.id}-progress-untilFirstContent-${i}` })),
|
|
266
|
+
node.response.response.content.map((c, i) => React.createElement("div", { className: 'theia-ResponseNode-Content', key: `${node.id}-content-${i}` }, this.getChatResponsePartRenderer(c, node))),
|
|
267
|
+
!node.response.isComplete
|
|
268
|
+
&& node.response.progressMessages
|
|
269
|
+
.filter(c => c.show === 'whileIncomplete')
|
|
270
|
+
.map((c, i) => React.createElement(ProgressMessage, { ...c, key: `${node.id}-progress-whileIncomplete-${i}` })),
|
|
271
|
+
node.response.progressMessages
|
|
272
|
+
.filter(c => c.show === 'forever')
|
|
273
|
+
.map((c, i) => React.createElement(ProgressMessage, { ...c, key: `${node.id}-progress-afterComplete-${i}` }))));
|
|
246
274
|
}
|
|
247
275
|
getChatResponsePartRenderer(content, node) {
|
|
248
276
|
const renderer = this.chatResponsePartRenderers.getContributions().reduce((prev, current) => {
|
|
@@ -284,10 +312,18 @@ tslib_1.__decorate([
|
|
|
284
312
|
(0, inversify_1.inject)(ai_chat_1.ChatAgentService),
|
|
285
313
|
tslib_1.__metadata("design:type", Object)
|
|
286
314
|
], ChatViewTreeWidget.prototype, "chatAgentService", void 0);
|
|
315
|
+
tslib_1.__decorate([
|
|
316
|
+
(0, inversify_1.inject)(ai_core_1.AIVariableService),
|
|
317
|
+
tslib_1.__metadata("design:type", Object)
|
|
318
|
+
], ChatViewTreeWidget.prototype, "variableService", void 0);
|
|
287
319
|
tslib_1.__decorate([
|
|
288
320
|
(0, inversify_1.inject)(core_1.CommandRegistry),
|
|
289
321
|
tslib_1.__metadata("design:type", core_1.CommandRegistry)
|
|
290
322
|
], ChatViewTreeWidget.prototype, "commandRegistry", void 0);
|
|
323
|
+
tslib_1.__decorate([
|
|
324
|
+
(0, inversify_1.inject)(browser_1.HoverService),
|
|
325
|
+
tslib_1.__metadata("design:type", browser_1.HoverService)
|
|
326
|
+
], ChatViewTreeWidget.prototype, "hoverService", void 0);
|
|
291
327
|
tslib_1.__decorate([
|
|
292
328
|
(0, inversify_1.postConstruct)(),
|
|
293
329
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -301,11 +337,42 @@ exports.ChatViewTreeWidget = ChatViewTreeWidget = ChatViewTreeWidget_1 = tslib_1
|
|
|
301
337
|
tslib_1.__param(2, (0, inversify_1.inject)(browser_1.ContextMenuRenderer)),
|
|
302
338
|
tslib_1.__metadata("design:paramtypes", [Object, Object, browser_1.ContextMenuRenderer])
|
|
303
339
|
], ChatViewTreeWidget);
|
|
304
|
-
const ChatRequestRender = ({ node }) => {
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
340
|
+
const ChatRequestRender = ({ node, hoverService, chatAgentService, variableService }) => {
|
|
341
|
+
const parts = node.request.message.parts;
|
|
342
|
+
return (React.createElement("div", { className: "theia-RequestNode" },
|
|
343
|
+
React.createElement("p", null, parts.map((part, index) => {
|
|
344
|
+
var _a, _b;
|
|
345
|
+
if (part instanceof ai_chat_1.ParsedChatRequestAgentPart || part instanceof ai_chat_1.ParsedChatRequestVariablePart) {
|
|
346
|
+
let description = undefined;
|
|
347
|
+
let className = '';
|
|
348
|
+
if (part instanceof ai_chat_1.ParsedChatRequestAgentPart) {
|
|
349
|
+
description = (_a = chatAgentService.getAgent(part.agentId)) === null || _a === void 0 ? void 0 : _a.description;
|
|
350
|
+
className = 'theia-RequestNode-AgentLabel';
|
|
351
|
+
}
|
|
352
|
+
else if (part instanceof ai_chat_1.ParsedChatRequestVariablePart) {
|
|
353
|
+
description = (_b = variableService.getVariable(part.variableName)) === null || _b === void 0 ? void 0 : _b.description;
|
|
354
|
+
className = 'theia-RequestNode-VariableLabel';
|
|
355
|
+
}
|
|
356
|
+
return (React.createElement(HoverableLabel, { key: index, text: part.text, description: description, hoverService: hoverService, className: className }));
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
// maintain the leading and trailing spaces with explicit ` `, otherwise they would get trimmed by the markdown renderer
|
|
360
|
+
const ref = (0, markdown_part_renderer_1.useMarkdownRendering)(part.text.replace(/^\s|\s$/g, ' '), true);
|
|
361
|
+
return (React.createElement("span", { key: index, ref: ref }));
|
|
362
|
+
}
|
|
363
|
+
}))));
|
|
364
|
+
};
|
|
365
|
+
const HoverableLabel = ({ text, description, hoverService, className }) => {
|
|
366
|
+
const spanRef = React.createRef();
|
|
367
|
+
return (React.createElement("span", { className: className, ref: spanRef, onMouseEnter: () => {
|
|
368
|
+
if (description) {
|
|
369
|
+
hoverService.requestHover({
|
|
370
|
+
content: description,
|
|
371
|
+
target: spanRef.current,
|
|
372
|
+
position: 'right'
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
} }, text));
|
|
309
376
|
};
|
|
310
377
|
const ProgressMessage = (c) => (React.createElement("div", { className: 'theia-ResponseNode-ProgressMessage' },
|
|
311
378
|
React.createElement(Indicator, { ...c }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-view-tree-widget.js","sourceRoot":"","sources":["../../../src/browser/chat-tree-view/chat-view-tree-widget.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-view-tree-widget.js","sourceRoot":"","sources":["../../../src/browser/chat-tree-view/chat-view-tree-widget.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/ai-chat-ui",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.56.0",
|
|
4
4
|
"description": "Theia - AI Chat UI Extension",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/ai-chat": "1.
|
|
7
|
-
"@theia/ai-core": "1.
|
|
8
|
-
"@theia/core": "1.
|
|
9
|
-
"@theia/editor": "1.
|
|
10
|
-
"@theia/editor-preview": "1.
|
|
11
|
-
"@theia/filesystem": "1.
|
|
12
|
-
"@theia/monaco": "1.
|
|
6
|
+
"@theia/ai-chat": "1.56.0",
|
|
7
|
+
"@theia/ai-core": "1.56.0",
|
|
8
|
+
"@theia/core": "1.56.0",
|
|
9
|
+
"@theia/editor": "1.56.0",
|
|
10
|
+
"@theia/editor-preview": "1.56.0",
|
|
11
|
+
"@theia/filesystem": "1.56.0",
|
|
12
|
+
"@theia/monaco": "1.56.0",
|
|
13
13
|
"@theia/monaco-editor-core": "1.83.101",
|
|
14
|
-
"@theia/workspace": "1.
|
|
14
|
+
"@theia/workspace": "1.56.0",
|
|
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.
|
|
53
|
+
"@theia/ext-scripts": "1.56.0"
|
|
54
54
|
},
|
|
55
55
|
"nyc": {
|
|
56
56
|
"extends": "../../configs/nyc.json"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "3b4498f8f1c66be688847418fcc35595282671dc"
|
|
59
59
|
}
|
|
@@ -36,6 +36,7 @@ import { ChatViewLanguageContribution } from './chat-view-language-contribution'
|
|
|
36
36
|
import { ChatViewWidget } from './chat-view-widget';
|
|
37
37
|
import { ChatViewWidgetToolbarContribution } from './chat-view-widget-toolbar-contribution';
|
|
38
38
|
import { EditorPreviewManager } from '@theia/editor-preview/lib/browser/editor-preview-manager';
|
|
39
|
+
import { QuestionPartRenderer } from './chat-response-renderer/question-part-renderer';
|
|
39
40
|
|
|
40
41
|
export default new ContainerModule((bind, _unbind, _isBound, rebind) => {
|
|
41
42
|
bindViewContribution(bind, AIChatContribution);
|
|
@@ -66,6 +67,7 @@ export default new ContainerModule((bind, _unbind, _isBound, rebind) => {
|
|
|
66
67
|
bind(ChatResponsePartRenderer).to(CommandPartRenderer).inSingletonScope();
|
|
67
68
|
bind(ChatResponsePartRenderer).to(ToolCallPartRenderer).inSingletonScope();
|
|
68
69
|
bind(ChatResponsePartRenderer).to(ErrorPartRenderer).inSingletonScope();
|
|
70
|
+
bind(ChatResponsePartRenderer).to(QuestionPartRenderer).inSingletonScope();
|
|
69
71
|
[CommandContribution, MenuContribution].forEach(serviceIdentifier =>
|
|
70
72
|
bind(serviceIdentifier).to(ChatViewMenuContribution).inSingletonScope()
|
|
71
73
|
);
|
|
@@ -61,21 +61,23 @@ const MarkdownRender = ({ response }: { response: MarkdownChatResponseContent |
|
|
|
61
61
|
/**
|
|
62
62
|
* This hook uses markdown-it directly to render markdown.
|
|
63
63
|
* The reason to use markdown-it directly is that the MarkdownRenderer is
|
|
64
|
-
*
|
|
64
|
+
* overridden by theia with a monaco version. This monaco version strips all html
|
|
65
65
|
* tags from the markdown with empty content.
|
|
66
66
|
* This leads to unexpected behavior when rendering markdown with html tags.
|
|
67
67
|
*
|
|
68
68
|
* @param markdown the string to render as markdown
|
|
69
|
+
* @param skipSurroundingParagraph whether to remove a surrounding paragraph element (default: false)
|
|
69
70
|
* @returns the ref to use in an element to render the markdown
|
|
70
71
|
*/
|
|
71
|
-
export const useMarkdownRendering = (markdown: string | MarkdownString) => {
|
|
72
|
+
export const useMarkdownRendering = (markdown: string | MarkdownString, skipSurroundingParagraph: boolean = false) => {
|
|
72
73
|
// eslint-disable-next-line no-null/no-null
|
|
73
74
|
const ref = useRef<HTMLDivElement | null>(null);
|
|
74
75
|
const markdownString = typeof markdown === 'string' ? markdown : markdown.value;
|
|
75
76
|
useEffect(() => {
|
|
76
77
|
const markdownIt = markdownit();
|
|
77
78
|
const host = document.createElement('div');
|
|
78
|
-
|
|
79
|
+
// markdownIt always puts the content in a paragraph element, so we remove it if we don't want it
|
|
80
|
+
const html = skipSurroundingParagraph ? markdownIt.render(markdownString).replace(/^<p>|<\/p>|<p><\/p>$/g, '') : markdownIt.render(markdownString);
|
|
79
81
|
host.innerHTML = DOMPurify.sanitize(html, {
|
|
80
82
|
ALLOW_UNKNOWN_PROTOCOLS: true // DOMPurify usually strips non http(s) links from hrefs
|
|
81
83
|
});
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
// *****************************************************************************
|
|
2
|
+
// Copyright (C) 2024 EclipseSource GmbH.
|
|
3
|
+
//
|
|
4
|
+
// This program and the accompanying materials are made available under the
|
|
5
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
//
|
|
8
|
+
// This Source Code may also be made available under the following Secondary
|
|
9
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
// with the GNU Classpath Exception which is available at
|
|
12
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
//
|
|
14
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
+
// *****************************************************************************
|
|
16
|
+
import { ChatResponseContent, QuestionResponseContent } from '@theia/ai-chat';
|
|
17
|
+
import { injectable } from '@theia/core/shared/inversify';
|
|
18
|
+
import * as React from '@theia/core/shared/react';
|
|
19
|
+
import { ReactNode } from '@theia/core/shared/react';
|
|
20
|
+
import { ChatResponsePartRenderer } from '../chat-response-part-renderer';
|
|
21
|
+
import { ResponseNode } from '../chat-tree-view';
|
|
22
|
+
|
|
23
|
+
@injectable()
|
|
24
|
+
export class QuestionPartRenderer
|
|
25
|
+
implements ChatResponsePartRenderer<QuestionResponseContent> {
|
|
26
|
+
|
|
27
|
+
canHandle(response: ChatResponseContent): number {
|
|
28
|
+
if (QuestionResponseContent.is(response)) {
|
|
29
|
+
return 10;
|
|
30
|
+
}
|
|
31
|
+
return -1;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
render(question: QuestionResponseContent, node: ResponseNode): ReactNode {
|
|
35
|
+
return (
|
|
36
|
+
<div className="theia-QuestionPartRenderer-root">
|
|
37
|
+
<div className="theia-QuestionPartRenderer-question">{question.question}</div>
|
|
38
|
+
<div className="theia-QuestionPartRenderer-options">
|
|
39
|
+
{
|
|
40
|
+
question.options.map((option, index) => (
|
|
41
|
+
<button
|
|
42
|
+
className={`theia-button theia-QuestionPartRenderer-option ${question.selectedOption === option ? 'selected' : ''}`}
|
|
43
|
+
onClick={() => {
|
|
44
|
+
question.selectedOption = option;
|
|
45
|
+
question.handler(option);
|
|
46
|
+
}}
|
|
47
|
+
disabled={question.selectedOption !== undefined || !node.response.isWaitingForInput}
|
|
48
|
+
key={index}
|
|
49
|
+
>
|
|
50
|
+
{option.text}
|
|
51
|
+
</button>
|
|
52
|
+
))
|
|
53
|
+
}
|
|
54
|
+
</div>
|
|
55
|
+
</div>
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
}
|
|
@@ -29,17 +29,46 @@ export class ToolCallPartRenderer implements ChatResponsePartRenderer<ToolCallCh
|
|
|
29
29
|
}
|
|
30
30
|
return -1;
|
|
31
31
|
}
|
|
32
|
+
|
|
32
33
|
render(response: ToolCallChatResponseContent): ReactNode {
|
|
33
|
-
return
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
<
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
34
|
+
return (
|
|
35
|
+
<h4 className='theia-toolCall'>
|
|
36
|
+
{response.finished ? (
|
|
37
|
+
<details>
|
|
38
|
+
<summary>Ran {response.name}
|
|
39
|
+
({this.renderCollapsibleArguments(response.arguments)})
|
|
40
|
+
</summary>
|
|
41
|
+
<pre>{this.tryPrettyPrintJson(response)}</pre>
|
|
42
|
+
</details>
|
|
43
|
+
) : (
|
|
44
|
+
<span>
|
|
45
|
+
<Spinner /> Running {response.name}({this.renderCollapsibleArguments(response.arguments)})
|
|
46
|
+
</span>
|
|
47
|
+
)}
|
|
48
|
+
</h4>
|
|
49
|
+
);
|
|
50
|
+
}
|
|
42
51
|
|
|
52
|
+
protected renderCollapsibleArguments(args: string | undefined): ReactNode {
|
|
53
|
+
if (!args || !args.trim() || args.trim() === '{}') {
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
return (
|
|
58
|
+
<details className="collapsible-arguments">
|
|
59
|
+
<summary className="collapsible-arguments-summary">...</summary>
|
|
60
|
+
<span>{this.prettyPrintArgs(args)}</span>
|
|
61
|
+
</details>
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
private prettyPrintArgs(args: string): string {
|
|
66
|
+
try {
|
|
67
|
+
return JSON.stringify(JSON.parse(args), undefined, 2);
|
|
68
|
+
} catch (e) {
|
|
69
|
+
// fall through
|
|
70
|
+
return args;
|
|
71
|
+
}
|
|
43
72
|
}
|
|
44
73
|
|
|
45
74
|
private tryPrettyPrintJson(response: ToolCallChatResponseContent): string | undefined {
|
|
@@ -14,12 +14,15 @@
|
|
|
14
14
|
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
15
|
// *****************************************************************************
|
|
16
16
|
import {
|
|
17
|
+
ChatAgent,
|
|
17
18
|
ChatAgentService,
|
|
18
19
|
ChatModel,
|
|
19
20
|
ChatProgressMessage,
|
|
20
21
|
ChatRequestModel,
|
|
21
22
|
ChatResponseContent,
|
|
22
23
|
ChatResponseModel,
|
|
24
|
+
ParsedChatRequestAgentPart,
|
|
25
|
+
ParsedChatRequestVariablePart,
|
|
23
26
|
} from '@theia/ai-chat';
|
|
24
27
|
import { CommandRegistry, ContributionProvider } from '@theia/core';
|
|
25
28
|
import {
|
|
@@ -27,6 +30,7 @@ import {
|
|
|
27
30
|
CommonCommands,
|
|
28
31
|
CompositeTreeNode,
|
|
29
32
|
ContextMenuRenderer,
|
|
33
|
+
HoverService,
|
|
30
34
|
Key,
|
|
31
35
|
KeyCode,
|
|
32
36
|
NodeProps,
|
|
@@ -46,6 +50,7 @@ import * as React from '@theia/core/shared/react';
|
|
|
46
50
|
import { ChatNodeToolbarActionContribution } from '../chat-node-toolbar-action-contribution';
|
|
47
51
|
import { ChatResponsePartRenderer } from '../chat-response-part-renderer';
|
|
48
52
|
import { useMarkdownRendering } from '../chat-response-renderer/markdown-part-renderer';
|
|
53
|
+
import { AIVariableService } from '@theia/ai-core';
|
|
49
54
|
|
|
50
55
|
// TODO Instead of directly operating on the ChatRequestModel we could use an intermediate view model
|
|
51
56
|
export interface RequestNode extends TreeNode {
|
|
@@ -77,9 +82,15 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
77
82
|
@inject(ChatAgentService)
|
|
78
83
|
protected chatAgentService: ChatAgentService;
|
|
79
84
|
|
|
85
|
+
@inject(AIVariableService)
|
|
86
|
+
protected readonly variableService: AIVariableService;
|
|
87
|
+
|
|
80
88
|
@inject(CommandRegistry)
|
|
81
89
|
private commandRegistry: CommandRegistry;
|
|
82
90
|
|
|
91
|
+
@inject(HoverService)
|
|
92
|
+
private hoverService: HoverService;
|
|
93
|
+
|
|
83
94
|
protected _shouldScrollToEnd = true;
|
|
84
95
|
|
|
85
96
|
protected isEnabled = false;
|
|
@@ -267,17 +278,33 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
267
278
|
|
|
268
279
|
private renderAgent(node: RequestNode | ResponseNode): React.ReactNode {
|
|
269
280
|
const inProgress = isResponseNode(node) && !node.response.isComplete && !node.response.isCanceled && !node.response.isError;
|
|
281
|
+
const waitingForInput = isResponseNode(node) && node.response.isWaitingForInput;
|
|
270
282
|
const toolbarContributions = !inProgress
|
|
271
283
|
? this.chatNodeToolbarActionContributions.getContributions()
|
|
272
284
|
.flatMap(c => c.getToolbarActions(node))
|
|
273
285
|
.filter(action => this.commandRegistry.isEnabled(action.commandId, node))
|
|
274
286
|
.sort((a, b) => (a.priority ?? 0) - (b.priority ?? 0))
|
|
275
287
|
: [];
|
|
288
|
+
const agentLabel = React.createRef<HTMLHeadingElement>();
|
|
289
|
+
const agentDescription = this.getAgent(node)?.description;
|
|
276
290
|
return <React.Fragment>
|
|
277
291
|
<div className='theia-ChatNodeHeader'>
|
|
278
292
|
<div className={`theia-AgentAvatar ${this.getAgentIconClassName(node)}`}></div>
|
|
279
|
-
<h3
|
|
293
|
+
<h3 ref={agentLabel}
|
|
294
|
+
className='theia-AgentLabel'
|
|
295
|
+
onMouseEnter={() => {
|
|
296
|
+
if (agentDescription) {
|
|
297
|
+
this.hoverService.requestHover({
|
|
298
|
+
content: agentDescription,
|
|
299
|
+
target: agentLabel.current!,
|
|
300
|
+
position: 'right'
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
}}>
|
|
304
|
+
{this.getAgentLabel(node)}
|
|
305
|
+
</h3>
|
|
280
306
|
{inProgress && <span className='theia-ChatContentInProgress'>Generating</span>}
|
|
307
|
+
{inProgress && waitingForInput && <span className='theia-ChatContentInProgress'>Waiting for input</span>}
|
|
281
308
|
<div className='theia-ChatNodeToolbar'>
|
|
282
309
|
{!inProgress &&
|
|
283
310
|
toolbarContributions.length > 0 &&
|
|
@@ -309,8 +336,14 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
309
336
|
// TODO find user name
|
|
310
337
|
return 'You';
|
|
311
338
|
}
|
|
312
|
-
|
|
313
|
-
|
|
339
|
+
return this.getAgent(node)?.name ?? 'AI';
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
private getAgent(node: RequestNode | ResponseNode): ChatAgent | undefined {
|
|
343
|
+
if (isRequestNode(node)) {
|
|
344
|
+
return undefined;
|
|
345
|
+
}
|
|
346
|
+
return node.response.agentId ? this.chatAgentService.getAgent(node.response.agentId) : undefined;
|
|
314
347
|
}
|
|
315
348
|
|
|
316
349
|
private getAgentIconClassName(node: RequestNode | ResponseNode): string | undefined {
|
|
@@ -332,7 +365,12 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
332
365
|
}
|
|
333
366
|
|
|
334
367
|
private renderChatRequest(node: RequestNode): React.ReactNode {
|
|
335
|
-
return <ChatRequestRender
|
|
368
|
+
return <ChatRequestRender
|
|
369
|
+
node={node}
|
|
370
|
+
hoverService={this.hoverService}
|
|
371
|
+
chatAgentService={this.chatAgentService}
|
|
372
|
+
variableService={this.variableService}
|
|
373
|
+
/>;
|
|
336
374
|
}
|
|
337
375
|
|
|
338
376
|
private renderChatResponse(node: ResponseNode): React.ReactNode {
|
|
@@ -340,12 +378,28 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
340
378
|
<div className={'theia-ResponseNode'}>
|
|
341
379
|
{!node.response.isComplete
|
|
342
380
|
&& node.response.response.content.length === 0
|
|
343
|
-
&& node.response.progressMessages
|
|
344
|
-
|
|
345
|
-
|
|
381
|
+
&& node.response.progressMessages
|
|
382
|
+
.filter(c => c.show === 'untilFirstContent')
|
|
383
|
+
.map((c, i) =>
|
|
384
|
+
<ProgressMessage {...c} key={`${node.id}-progress-untilFirstContent-${i}`} />
|
|
385
|
+
)
|
|
386
|
+
}
|
|
346
387
|
{node.response.response.content.map((c, i) =>
|
|
347
388
|
<div className='theia-ResponseNode-Content' key={`${node.id}-content-${i}`}>{this.getChatResponsePartRenderer(c, node)}</div>
|
|
348
389
|
)}
|
|
390
|
+
{!node.response.isComplete
|
|
391
|
+
&& node.response.progressMessages
|
|
392
|
+
.filter(c => c.show === 'whileIncomplete')
|
|
393
|
+
.map((c, i) =>
|
|
394
|
+
<ProgressMessage {...c} key={`${node.id}-progress-whileIncomplete-${i}`} />
|
|
395
|
+
)
|
|
396
|
+
}
|
|
397
|
+
{node.response.progressMessages
|
|
398
|
+
.filter(c => c.show === 'forever')
|
|
399
|
+
.map((c, i) =>
|
|
400
|
+
<ProgressMessage {...c} key={`${node.id}-progress-afterComplete-${i}`} />
|
|
401
|
+
)
|
|
402
|
+
}
|
|
349
403
|
</div>
|
|
350
404
|
);
|
|
351
405
|
}
|
|
@@ -376,11 +430,79 @@ export class ChatViewTreeWidget extends TreeWidget {
|
|
|
376
430
|
}
|
|
377
431
|
}
|
|
378
432
|
|
|
379
|
-
const ChatRequestRender = (
|
|
380
|
-
|
|
381
|
-
|
|
433
|
+
const ChatRequestRender = (
|
|
434
|
+
{
|
|
435
|
+
node, hoverService, chatAgentService, variableService
|
|
436
|
+
}: {
|
|
437
|
+
node: RequestNode,
|
|
438
|
+
hoverService: HoverService,
|
|
439
|
+
chatAgentService: ChatAgentService,
|
|
440
|
+
variableService: AIVariableService
|
|
441
|
+
}) => {
|
|
442
|
+
const parts = node.request.message.parts;
|
|
443
|
+
return (
|
|
444
|
+
<div className="theia-RequestNode">
|
|
445
|
+
<p>
|
|
446
|
+
{parts.map((part, index) => {
|
|
447
|
+
if (part instanceof ParsedChatRequestAgentPart || part instanceof ParsedChatRequestVariablePart) {
|
|
448
|
+
let description = undefined;
|
|
449
|
+
let className = '';
|
|
450
|
+
if (part instanceof ParsedChatRequestAgentPart) {
|
|
451
|
+
description = chatAgentService.getAgent(part.agentId)?.description;
|
|
452
|
+
className = 'theia-RequestNode-AgentLabel';
|
|
453
|
+
} else if (part instanceof ParsedChatRequestVariablePart) {
|
|
454
|
+
description = variableService.getVariable(part.variableName)?.description;
|
|
455
|
+
className = 'theia-RequestNode-VariableLabel';
|
|
456
|
+
}
|
|
457
|
+
return (
|
|
458
|
+
<HoverableLabel
|
|
459
|
+
key={index}
|
|
460
|
+
text={part.text}
|
|
461
|
+
description={description}
|
|
462
|
+
hoverService={hoverService}
|
|
463
|
+
className={className}
|
|
464
|
+
/>
|
|
465
|
+
);
|
|
466
|
+
} else {
|
|
467
|
+
// maintain the leading and trailing spaces with explicit ` `, otherwise they would get trimmed by the markdown renderer
|
|
468
|
+
const ref = useMarkdownRendering(part.text.replace(/^\s|\s$/g, ' '), true);
|
|
469
|
+
return (
|
|
470
|
+
<span key={index} ref={ref}></span>
|
|
471
|
+
);
|
|
472
|
+
}
|
|
473
|
+
})}
|
|
474
|
+
</p>
|
|
475
|
+
</div>
|
|
476
|
+
);
|
|
477
|
+
};
|
|
382
478
|
|
|
383
|
-
|
|
479
|
+
const HoverableLabel = (
|
|
480
|
+
{
|
|
481
|
+
text, description, hoverService, className
|
|
482
|
+
}: {
|
|
483
|
+
text: string,
|
|
484
|
+
description?: string,
|
|
485
|
+
hoverService: HoverService,
|
|
486
|
+
className: string
|
|
487
|
+
}) => {
|
|
488
|
+
const spanRef = React.createRef<HTMLSpanElement>();
|
|
489
|
+
return (
|
|
490
|
+
<span
|
|
491
|
+
className={className}
|
|
492
|
+
ref={spanRef}
|
|
493
|
+
onMouseEnter={() => {
|
|
494
|
+
if (description) {
|
|
495
|
+
hoverService.requestHover({
|
|
496
|
+
content: description,
|
|
497
|
+
target: spanRef.current!,
|
|
498
|
+
position: 'right'
|
|
499
|
+
});
|
|
500
|
+
}
|
|
501
|
+
}}
|
|
502
|
+
>
|
|
503
|
+
{text}
|
|
504
|
+
</span>
|
|
505
|
+
);
|
|
384
506
|
};
|
|
385
507
|
|
|
386
508
|
const ProgressMessage = (c: ChatProgressMessage) => (
|
|
@@ -132,6 +132,20 @@ div:last-child > .theia-ChatNode {
|
|
|
132
132
|
font-size: var(--theia-code-font-size);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
+
.theia-RequestNode > p div {
|
|
136
|
+
display: inline;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.theia-RequestNode .theia-RequestNode-AgentLabel,
|
|
140
|
+
.theia-RequestNode .theia-RequestNode-VariableLabel {
|
|
141
|
+
padding: calc(var(--theia-ui-padding) * 2 / 3);
|
|
142
|
+
padding-top: 0px;
|
|
143
|
+
padding-bottom: 0px;
|
|
144
|
+
border-radius: calc(var(--theia-ui-padding) * 2 / 3);
|
|
145
|
+
background: var(--theia-badge-background);
|
|
146
|
+
color: var(--theia-badge-foreground);
|
|
147
|
+
}
|
|
148
|
+
|
|
135
149
|
.chat-input-widget {
|
|
136
150
|
align-items: flex-end;
|
|
137
151
|
display: flex;
|
|
@@ -231,7 +245,7 @@ div:last-child > .theia-ChatNode {
|
|
|
231
245
|
display: flex;
|
|
232
246
|
flex-direction: column;
|
|
233
247
|
gap: 2px;
|
|
234
|
-
border:
|
|
248
|
+
border: var(--theia-border-width) solid var(--theia-input-border);
|
|
235
249
|
border-radius: 4px;
|
|
236
250
|
}
|
|
237
251
|
|
|
@@ -265,6 +279,33 @@ div:last-child > .theia-ChatNode {
|
|
|
265
279
|
background-color: var(--theia-input-border);
|
|
266
280
|
}
|
|
267
281
|
|
|
282
|
+
.theia-QuestionPartRenderer-root {
|
|
283
|
+
display: flex;
|
|
284
|
+
flex-direction: column;
|
|
285
|
+
gap: 8px;
|
|
286
|
+
border: var(--theia-border-width) solid
|
|
287
|
+
var(--theia-sideBarSectionHeader-border);
|
|
288
|
+
padding: 8px 12px 12px;
|
|
289
|
+
border-radius: 5px;
|
|
290
|
+
margin: 0 0 8px 0;
|
|
291
|
+
}
|
|
292
|
+
.theia-QuestionPartRenderer-options {
|
|
293
|
+
display: flex;
|
|
294
|
+
flex-wrap: wrap;
|
|
295
|
+
gap: 12px;
|
|
296
|
+
}
|
|
297
|
+
.theia-QuestionPartRenderer-option {
|
|
298
|
+
min-width: 100px;
|
|
299
|
+
flex: 1 1 auto;
|
|
300
|
+
margin: 0;
|
|
301
|
+
}
|
|
302
|
+
.theia-QuestionPartRenderer-option.selected:disabled:hover {
|
|
303
|
+
background-color: var(--theia-button-disabledBackground);
|
|
304
|
+
}
|
|
305
|
+
.theia-QuestionPartRenderer-option:disabled:not(.selected) {
|
|
306
|
+
background-color: var(--theia-button-secondaryBackground);
|
|
307
|
+
}
|
|
308
|
+
|
|
268
309
|
.theia-toolCall {
|
|
269
310
|
font-weight: normal;
|
|
270
311
|
color: var(--theia-descriptionForeground);
|
|
@@ -289,6 +330,21 @@ div:last-child > .theia-ChatNode {
|
|
|
289
330
|
overflow: auto;
|
|
290
331
|
}
|
|
291
332
|
|
|
333
|
+
.collapsible-arguments {
|
|
334
|
+
display: inline-block;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
.collapsible-arguments .collapsible-arguments-summary {
|
|
338
|
+
display: inline-block;
|
|
339
|
+
white-space: nowrap;
|
|
340
|
+
text-decoration: underline;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
details[open].collapsible-arguments,
|
|
344
|
+
details[open].collapsible-arguments .collapsible-arguments-summary {
|
|
345
|
+
display: unset;
|
|
346
|
+
}
|
|
347
|
+
|
|
292
348
|
.theia-ResponseNode-ProgressMessage {
|
|
293
349
|
font-weight: normal;
|
|
294
350
|
color: var(--theia-descriptionForeground);
|