@theia/ai-chat-ui 1.55.1 → 1.57.0-next.112

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.
Files changed (49) hide show
  1. package/README.md +2 -1
  2. package/lib/browser/ai-chat-ui-contribution.js +1 -1
  3. package/lib/browser/ai-chat-ui-contribution.js.map +1 -1
  4. package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
  5. package/lib/browser/ai-chat-ui-frontend-module.js +11 -1
  6. package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
  7. package/lib/browser/chat-input-widget.d.ts +18 -5
  8. package/lib/browser/chat-input-widget.d.ts.map +1 -1
  9. package/lib/browser/chat-input-widget.js +239 -79
  10. package/lib/browser/chat-input-widget.js.map +1 -1
  11. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts +30 -2
  12. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts.map +1 -1
  13. package/lib/browser/chat-response-renderer/code-part-renderer.js +45 -10
  14. package/lib/browser/chat-response-renderer/code-part-renderer.js.map +1 -1
  15. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +10 -4
  16. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +1 -1
  17. package/lib/browser/chat-response-renderer/markdown-part-renderer.js +41 -11
  18. package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +1 -1
  19. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts +10 -0
  20. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts.map +1 -0
  21. package/lib/browser/chat-response-renderer/question-part-renderer.js +43 -0
  22. package/lib/browser/chat-response-renderer/question-part-renderer.js.map +1 -0
  23. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts +2 -0
  24. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +1 -1
  25. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +38 -12
  26. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +1 -1
  27. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +6 -1
  28. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +1 -1
  29. package/lib/browser/chat-tree-view/chat-view-tree-widget.js +85 -14
  30. package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
  31. package/lib/browser/chat-view-language-contribution.d.ts.map +1 -1
  32. package/lib/browser/chat-view-language-contribution.js +0 -1
  33. package/lib/browser/chat-view-language-contribution.js.map +1 -1
  34. package/lib/browser/chat-view-widget.d.ts +4 -1
  35. package/lib/browser/chat-view-widget.d.ts.map +1 -1
  36. package/lib/browser/chat-view-widget.js +14 -4
  37. package/lib/browser/chat-view-widget.js.map +1 -1
  38. package/package.json +12 -12
  39. package/src/browser/ai-chat-ui-contribution.ts +1 -1
  40. package/src/browser/ai-chat-ui-frontend-module.ts +29 -5
  41. package/src/browser/chat-input-widget.tsx +351 -99
  42. package/src/browser/chat-response-renderer/code-part-renderer.tsx +48 -9
  43. package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +42 -13
  44. package/src/browser/chat-response-renderer/question-part-renderer.tsx +59 -0
  45. package/src/browser/chat-response-renderer/toolcall-part-renderer.tsx +46 -11
  46. package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +141 -12
  47. package/src/browser/chat-view-language-contribution.ts +0 -1
  48. package/src/browser/chat-view-widget.tsx +19 -6
  49. package/src/browser/style/index.css +243 -22
package/README.md CHANGED
@@ -28,5 +28,6 @@ It is based on `@theia/ai-chat`.
28
28
  - [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
29
29
 
30
30
  ## Trademark
31
+
31
32
  "Theia" is a trademark of the Eclipse Foundation
32
- https://www.eclipse.org/theia
33
+ <https://www.eclipse.org/theia>
@@ -37,7 +37,7 @@ let AIChatContribution = AIChatContribution_1 = class AIChatContribution extends
37
37
  rank: 100
38
38
  },
39
39
  toggleCommandId: exports.AI_CHAT_TOGGLE_COMMAND_ID,
40
- toggleKeybinding: 'ctrlcmd+shift+e'
40
+ toggleKeybinding: 'ctrlcmd+alt+i'
41
41
  });
42
42
  }
43
43
  registerCommands(registry) {
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chat-ui-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-chat-ui-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-contribution.ts"],"names":[],"mappings":"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"}
@@ -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;;AAkB3C,wBAgDG"}
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;AAgC3E,OAAO,mCAAmC,CAAC;;AAE3C,wBA0DG"}
@@ -20,7 +20,6 @@ const browser_1 = require("@theia/core/lib/browser");
20
20
  const tab_bar_toolbar_1 = require("@theia/core/lib/browser/shell/tab-bar-toolbar");
21
21
  const inversify_1 = require("@theia/core/shared/inversify");
22
22
  const browser_2 = require("@theia/editor/lib/browser");
23
- require("../../src/browser/style/index.css");
24
23
  const ai_chat_ui_contribution_1 = require("./ai-chat-ui-contribution");
25
24
  const chat_input_widget_1 = require("./chat-input-widget");
26
25
  const chat_node_toolbar_action_contribution_1 = require("./chat-node-toolbar-action-contribution");
@@ -34,12 +33,17 @@ const chat_view_language_contribution_1 = require("./chat-view-language-contribu
34
33
  const chat_view_widget_1 = require("./chat-view-widget");
35
34
  const chat_view_widget_toolbar_contribution_1 = require("./chat-view-widget-toolbar-contribution");
36
35
  const editor_preview_manager_1 = require("@theia/editor-preview/lib/browser/editor-preview-manager");
36
+ const question_part_renderer_1 = require("./chat-response-renderer/question-part-renderer");
37
+ require("../../src/browser/style/index.css");
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);
40
41
  (0, core_1.bindContributionProvider)(bind, chat_response_part_renderer_1.ChatResponsePartRenderer);
41
42
  bindChatViewWidget(bind);
42
43
  bind(chat_input_widget_1.AIChatInputWidget).toSelf();
44
+ bind(chat_input_widget_1.AIChatInputConfiguration).toConstantValue({
45
+ showContext: false
46
+ });
43
47
  bind(browser_1.WidgetFactory).toDynamicValue(({ container }) => ({
44
48
  id: chat_input_widget_1.AIChatInputWidget.ID,
45
49
  createWidget: () => container.get(chat_input_widget_1.AIChatInputWidget)
@@ -56,7 +60,13 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
56
60
  bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.CommandPartRenderer).inSingletonScope();
57
61
  bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.ToolCallPartRenderer).inSingletonScope();
58
62
  bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(chat_response_renderer_1.ErrorPartRenderer).inSingletonScope();
63
+ bind(chat_response_part_renderer_1.ChatResponsePartRenderer).to(question_part_renderer_1.QuestionPartRenderer).inSingletonScope();
59
64
  [core_1.CommandContribution, core_1.MenuContribution].forEach(serviceIdentifier => bind(serviceIdentifier).to(chat_view_contribution_1.ChatViewMenuContribution).inSingletonScope());
65
+ (0, core_1.bindContributionProvider)(bind, chat_response_renderer_1.CodePartRendererAction);
66
+ bind(chat_response_renderer_1.CopyToClipboardButtonAction).toSelf().inSingletonScope();
67
+ bind(chat_response_renderer_1.CodePartRendererAction).toService(chat_response_renderer_1.CopyToClipboardButtonAction);
68
+ bind(chat_response_renderer_1.InsertCodeAtCursorButtonAction).toSelf().inSingletonScope();
69
+ bind(chat_response_renderer_1.CodePartRendererAction).toService(chat_response_renderer_1.InsertCodeAtCursorButtonAction);
60
70
  bind(ai_editor_manager_1.AIEditorManager).toSelf().inSingletonScope();
61
71
  rebind(browser_2.EditorManager).toService(ai_editor_manager_1.AIEditorManager);
62
72
  rebind(editor_preview_manager_1.EditorPreviewManager).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":"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"}
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,uEAA+D;AAC/D,2DAAkF;AAClF,mGAA4F;AAC5F,+EAAyE;AACzE,qEAUkC;AAClC,kFAMoD;AACpD,qDAA4D;AAC5D,kFAA4E;AAC5E,qEAAoE;AACpE,uFAAiF;AACjF,yDAAoD;AACpD,mGAA4F;AAC5F,qGAAgG;AAChG,4FAAuF;AACvF,6CAA2C;AAE3C,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,4CAAwB,CAAC,CAAC,eAAe,CAAC;QAC3C,WAAW,EAAE,KAAK;KACrB,CAAC,CAAC;IACH,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,IAAA,+BAAwB,EAAC,IAAI,EAAE,+CAAsB,CAAC,CAAC;IACvD,IAAI,CAAC,oDAA2B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC9D,IAAI,CAAC,+CAAsB,CAAC,CAAC,SAAS,CAAC,oDAA2B,CAAC,CAAC;IACpE,IAAI,CAAC,uDAA8B,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACjE,IAAI,CAAC,+CAAsB,CAAC,CAAC,SAAS,CAAC,uDAA8B,CAAC,CAAC;IAEvE,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"}
@@ -1,29 +1,42 @@
1
1
  /// <reference types="react" />
2
- import { ChatAgent, ChatAgentService, ChatModel, ChatRequestModel } from '@theia/ai-chat';
2
+ import { ChatModel, ChatRequestModel } from '@theia/ai-chat';
3
3
  import { UntitledResourceResolver } from '@theia/core';
4
- import { ContextMenuRenderer, Message, ReactWidget } from '@theia/core/lib/browser';
4
+ import { ContextMenuRenderer, LabelProvider, Message, ReactWidget } from '@theia/core/lib/browser';
5
5
  import * as React from '@theia/core/shared/react';
6
- import { MonacoEditorProvider } from '@theia/monaco/lib/browser/monaco-editor-provider';
7
6
  import { IMouseEvent } from '@theia/monaco-editor-core';
7
+ import { MonacoEditor } from '@theia/monaco/lib/browser/monaco-editor';
8
+ import { MonacoEditorProvider } from '@theia/monaco/lib/browser/monaco-editor-provider';
8
9
  type Query = (query: string) => Promise<void>;
9
10
  type Cancel = (requestModel: ChatRequestModel) => void;
11
+ type DeleteChangeSet = (requestModel: ChatRequestModel) => void;
12
+ type DeleteChangeSetElement = (requestModel: ChatRequestModel, index: number) => void;
13
+ export declare const AIChatInputConfiguration: unique symbol;
14
+ export interface AIChatInputConfiguration {
15
+ showContext?: boolean;
16
+ }
10
17
  export declare class AIChatInputWidget extends ReactWidget {
11
18
  static ID: string;
12
19
  static readonly CONTEXT_MENU: string[];
13
- protected readonly agentService: ChatAgentService;
14
20
  protected readonly editorProvider: MonacoEditorProvider;
15
21
  protected readonly untitledResourceResolver: UntitledResourceResolver;
16
22
  protected readonly contextMenuRenderer: ContextMenuRenderer;
23
+ protected readonly configuration: AIChatInputConfiguration | undefined;
24
+ protected readonly labelProvider: LabelProvider;
25
+ protected editorRef: MonacoEditor | undefined;
26
+ private editorReady;
17
27
  protected isEnabled: boolean;
18
28
  private _onQuery;
19
29
  set onQuery(query: Query);
20
30
  private _onCancel;
21
31
  set onCancel(cancel: Cancel);
32
+ private _onDeleteChangeSet;
33
+ set onDeleteChangeSet(deleteChangeSet: DeleteChangeSet);
34
+ private _onDeleteChangeSetElement;
35
+ set onDeleteChangeSetElement(deleteChangeSetElement: DeleteChangeSetElement);
22
36
  private _chatModel;
23
37
  set chatModel(chatModel: ChatModel);
24
38
  protected init(): void;
25
39
  protected onActivateRequest(msg: Message): void;
26
- protected getChatAgents(): ChatAgent[];
27
40
  protected render(): React.ReactNode;
28
41
  setEnabled(enabled: boolean): void;
29
42
  protected handleContextMenu(event: IMouseEvent): void;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-input-widget.d.ts","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC1F,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGpF,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAExF,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD,KAAK,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9C,KAAK,MAAM,GAAG,CAAC,YAAY,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAEvD,qBACa,iBAAkB,SAAQ,WAAW;IAC9C,OAAc,EAAE,SAAuB;IACvC,MAAM,CAAC,QAAQ,CAAC,YAAY,WAA+B;IAG3D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAGtE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAE5D,SAAS,CAAC,SAAS,UAAS;IAE5B,OAAO,CAAC,QAAQ,CAAQ;IACxB,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,EAEvB;IACD,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,EAE1B;IACD,OAAO,CAAC,UAAU,CAAY;IAC9B,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAGjC;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;cAKH,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxD,SAAS,CAAC,aAAa,IAAI,SAAS,EAAE;IAItC,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;IAe5B,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAKzC,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;CAQxD"}
1
+ {"version":3,"file":"chat-input-widget.d.ts","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAgD,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC3G,OAAO,EAAc,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGnG,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAGxF,KAAK,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;AAC9C,KAAK,MAAM,GAAG,CAAC,YAAY,EAAE,gBAAgB,KAAK,IAAI,CAAC;AACvD,KAAK,eAAe,GAAG,CAAC,YAAY,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAChE,KAAK,sBAAsB,GAAG,CAAC,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAEtF,eAAO,MAAM,wBAAwB,eAAqC,CAAC;AAC3E,MAAM,WAAW,wBAAwB;IACrC,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,qBACa,iBAAkB,SAAQ,WAAW;IAC9C,OAAc,EAAE,SAAuB;IACvC,MAAM,CAAC,QAAQ,CAAC,YAAY,WAA+B;IAG3D,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAGtE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAGvE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,SAAS,EAAE,YAAY,GAAG,SAAS,CAAa;IAC1D,OAAO,CAAC,WAAW,CAAwB;IAE3C,SAAS,CAAC,SAAS,UAAS;IAE5B,OAAO,CAAC,QAAQ,CAAQ;IACxB,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,EAEvB;IACD,OAAO,CAAC,SAAS,CAAS;IAC1B,IAAI,QAAQ,CAAC,MAAM,EAAE,MAAM,EAE1B;IACD,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,IAAI,iBAAiB,CAAC,eAAe,EAAE,eAAe,EAErD;IACD,OAAO,CAAC,yBAAyB,CAAyB;IAC1D,IAAI,wBAAwB,CAAC,sBAAsB,EAAE,sBAAsB,EAE1E;IACD,OAAO,CAAC,UAAU,CAAY;IAC9B,IAAI,SAAS,CAAC,SAAS,EAAE,SAAS,EAGjC;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;cAMH,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IASxD,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS;IAsB5B,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAKzC,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;CAQxD"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var AIChatInputWidget_1;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.AIChatInputWidget = void 0;
4
+ exports.AIChatInputWidget = exports.AIChatInputConfiguration = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  // *****************************************************************************
7
7
  // Copyright (C) 2024 EclipseSource GmbH.
@@ -21,13 +21,17 @@ const tslib_1 = require("tslib");
21
21
  const ai_chat_1 = require("@theia/ai-chat");
22
22
  const core_1 = require("@theia/core");
23
23
  const browser_1 = require("@theia/core/lib/browser");
24
+ const promise_util_1 = require("@theia/core/lib/common/promise-util");
24
25
  const inversify_1 = require("@theia/core/shared/inversify");
25
26
  const React = require("@theia/core/shared/react");
26
27
  const monaco_editor_provider_1 = require("@theia/monaco/lib/browser/monaco-editor-provider");
27
28
  const chat_view_language_contribution_1 = require("./chat-view-language-contribution");
29
+ exports.AIChatInputConfiguration = Symbol('AIChatInputConfiguration');
28
30
  let AIChatInputWidget = AIChatInputWidget_1 = class AIChatInputWidget extends browser_1.ReactWidget {
29
31
  constructor() {
30
32
  super(...arguments);
33
+ this.editorRef = undefined;
34
+ this.editorReady = new promise_util_1.Deferred();
31
35
  this.isEnabled = false;
32
36
  }
33
37
  set onQuery(query) {
@@ -36,6 +40,12 @@ let AIChatInputWidget = AIChatInputWidget_1 = class AIChatInputWidget extends br
36
40
  set onCancel(cancel) {
37
41
  this._onCancel = cancel;
38
42
  }
43
+ set onDeleteChangeSet(deleteChangeSet) {
44
+ this._onDeleteChangeSet = deleteChangeSet;
45
+ }
46
+ set onDeleteChangeSetElement(deleteChangeSetElement) {
47
+ this._onDeleteChangeSetElement = deleteChangeSetElement;
48
+ }
39
49
  set chatModel(chatModel) {
40
50
  this._chatModel = chatModel;
41
51
  this.update();
@@ -47,13 +57,18 @@ let AIChatInputWidget = AIChatInputWidget_1 = class AIChatInputWidget extends br
47
57
  }
48
58
  onActivateRequest(msg) {
49
59
  super.onActivateRequest(msg);
50
- this.node.focus({ preventScroll: true });
51
- }
52
- getChatAgents() {
53
- return this.agentService.getAgents();
60
+ this.editorReady.promise.then(() => {
61
+ if (this.editorRef) {
62
+ this.editorRef.focus();
63
+ }
64
+ });
54
65
  }
55
66
  render() {
56
- return (React.createElement(ChatInput, { onQuery: this._onQuery.bind(this), onCancel: this._onCancel.bind(this), chatModel: this._chatModel, getChatAgents: this.getChatAgents.bind(this), editorProvider: this.editorProvider, untitledResourceResolver: this.untitledResourceResolver, contextMenuCallback: this.handleContextMenu.bind(this), isEnabled: this.isEnabled }));
67
+ var _a;
68
+ return (React.createElement(ChatInput, { onQuery: this._onQuery.bind(this), onCancel: this._onCancel.bind(this), onDeleteChangeSet: this._onDeleteChangeSet.bind(this), onDeleteChangeSetElement: this._onDeleteChangeSetElement.bind(this), chatModel: this._chatModel, editorProvider: this.editorProvider, untitledResourceResolver: this.untitledResourceResolver, contextMenuCallback: this.handleContextMenu.bind(this), isEnabled: this.isEnabled, setEditorRef: editor => {
69
+ this.editorRef = editor;
70
+ this.editorReady.resolve();
71
+ }, showContext: (_a = this.configuration) === null || _a === void 0 ? void 0 : _a.showContext, labelProvider: this.labelProvider }));
57
72
  }
58
73
  setEnabled(enabled) {
59
74
  this.isEnabled = enabled;
@@ -70,10 +85,6 @@ let AIChatInputWidget = AIChatInputWidget_1 = class AIChatInputWidget extends br
70
85
  exports.AIChatInputWidget = AIChatInputWidget;
71
86
  AIChatInputWidget.ID = 'chat-input-widget';
72
87
  AIChatInputWidget.CONTEXT_MENU = ['chat-input-context-menu'];
73
- tslib_1.__decorate([
74
- (0, inversify_1.inject)(ai_chat_1.ChatAgentService),
75
- tslib_1.__metadata("design:type", Object)
76
- ], AIChatInputWidget.prototype, "agentService", void 0);
77
88
  tslib_1.__decorate([
78
89
  (0, inversify_1.inject)(monaco_editor_provider_1.MonacoEditorProvider),
79
90
  tslib_1.__metadata("design:type", monaco_editor_provider_1.MonacoEditorProvider)
@@ -86,6 +97,15 @@ tslib_1.__decorate([
86
97
  (0, inversify_1.inject)(browser_1.ContextMenuRenderer),
87
98
  tslib_1.__metadata("design:type", browser_1.ContextMenuRenderer)
88
99
  ], AIChatInputWidget.prototype, "contextMenuRenderer", void 0);
100
+ tslib_1.__decorate([
101
+ (0, inversify_1.inject)(exports.AIChatInputConfiguration),
102
+ (0, inversify_1.optional)(),
103
+ tslib_1.__metadata("design:type", Object)
104
+ ], AIChatInputWidget.prototype, "configuration", void 0);
105
+ tslib_1.__decorate([
106
+ (0, inversify_1.inject)(browser_1.LabelProvider),
107
+ tslib_1.__metadata("design:type", browser_1.LabelProvider)
108
+ ], AIChatInputWidget.prototype, "labelProvider", void 0);
89
109
  tslib_1.__decorate([
90
110
  (0, inversify_1.postConstruct)(),
91
111
  tslib_1.__metadata("design:type", Function),
@@ -96,90 +116,127 @@ exports.AIChatInputWidget = AIChatInputWidget = AIChatInputWidget_1 = tslib_1.__
96
116
  (0, inversify_1.injectable)()
97
117
  ], AIChatInputWidget);
98
118
  const ChatInput = (props) => {
119
+ const onDeleteChangeSet = () => props.onDeleteChangeSet(props.chatModel.id);
120
+ const onDeleteChangeSetElement = (index) => props.onDeleteChangeSetElement(props.chatModel.id, index);
99
121
  const [inProgress, setInProgress] = React.useState(false);
122
+ const [isInputEmpty, setIsInputEmpty] = React.useState(true);
123
+ const [changeSetUI, setChangeSetUI] = React.useState(() => props.chatModel.changeSet ? buildChangeSetUI(props.chatModel.changeSet, props.labelProvider, onDeleteChangeSet, onDeleteChangeSetElement) : undefined);
100
124
  // eslint-disable-next-line no-null/no-null
101
125
  const editorContainerRef = React.useRef(null);
102
126
  // eslint-disable-next-line no-null/no-null
103
127
  const placeholderRef = React.useRef(null);
104
128
  const editorRef = React.useRef(undefined);
105
- const allRequests = props.chatModel.getRequests();
106
- const lastRequest = allRequests.length === 0 ? undefined : allRequests[allRequests.length - 1];
107
- const createInputElement = async () => {
108
- const resource = await props.untitledResourceResolver.createUntitledResource('', chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION);
109
- const editor = await props.editorProvider.createInline(resource.uri, editorContainerRef.current, {
110
- language: chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION,
111
- // Disable code lens, inlay hints and hover support to avoid console errors from other contributions
112
- codeLens: false,
113
- inlayHints: { enabled: 'off' },
114
- hover: { enabled: false },
115
- autoSizing: true,
116
- scrollBeyondLastLine: false,
117
- scrollBeyondLastColumn: 0,
118
- minHeight: 1,
119
- fontFamily: 'var(--theia-ui-font-family)',
120
- fontSize: 13,
121
- cursorWidth: 1,
122
- maxHeight: -1,
123
- scrollbar: { horizontal: 'hidden' },
124
- automaticLayout: true,
125
- lineNumbers: 'off',
126
- lineHeight: 20,
127
- padding: { top: 8 },
128
- suggest: {
129
- showIcons: true,
130
- showSnippets: false,
131
- showWords: false,
132
- showStatusBar: false,
133
- insertMode: 'replace',
134
- },
135
- bracketPairColorization: { enabled: false },
136
- wrappingStrategy: 'advanced',
137
- stickyScroll: { enabled: false },
138
- });
139
- editor.getControl().onDidChangeModelContent(() => {
140
- layout();
141
- });
142
- editor.getControl().onContextMenu(e => props.contextMenuCallback(e.event));
143
- editorRef.current = editor;
144
- };
145
129
  React.useEffect(() => {
130
+ const createInputElement = async () => {
131
+ const paddingTop = 6;
132
+ const lineHeight = 20;
133
+ const maxHeight = 240;
134
+ const resource = await props.untitledResourceResolver.createUntitledResource('', chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION);
135
+ const editor = await props.editorProvider.createInline(resource.uri, editorContainerRef.current, {
136
+ language: chat_view_language_contribution_1.CHAT_VIEW_LANGUAGE_EXTENSION,
137
+ // Disable code lens, inlay hints and hover support to avoid console errors from other contributions
138
+ codeLens: false,
139
+ inlayHints: { enabled: 'off' },
140
+ hover: { enabled: false },
141
+ autoSizing: false, // we handle the sizing ourselves
142
+ scrollBeyondLastLine: false,
143
+ scrollBeyondLastColumn: 0,
144
+ minHeight: 1,
145
+ fontFamily: 'var(--theia-ui-font-family)',
146
+ fontSize: 13,
147
+ cursorWidth: 1,
148
+ maxHeight: -1,
149
+ scrollbar: { horizontal: 'hidden' },
150
+ automaticLayout: true,
151
+ lineNumbers: 'off',
152
+ lineHeight,
153
+ padding: { top: paddingTop },
154
+ suggest: {
155
+ showIcons: true,
156
+ showSnippets: false,
157
+ showWords: false,
158
+ showStatusBar: false,
159
+ insertMode: 'replace',
160
+ },
161
+ bracketPairColorization: { enabled: false },
162
+ wrappingStrategy: 'advanced',
163
+ stickyScroll: { enabled: false },
164
+ });
165
+ if (editorContainerRef.current) {
166
+ editorContainerRef.current.style.height = (lineHeight + (2 * paddingTop)) + 'px';
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(() => {
175
+ const value = editor.getControl().getValue();
176
+ setIsInputEmpty(!value || value.length === 0);
177
+ updateEditorHeight();
178
+ handleOnChange();
179
+ });
180
+ const resizeObserver = new ResizeObserver(updateEditorHeight);
181
+ if (editorContainerRef.current) {
182
+ resizeObserver.observe(editorContainerRef.current);
183
+ }
184
+ editor.getControl().onDidDispose(() => {
185
+ resizeObserver.disconnect();
186
+ });
187
+ editor.getControl().onContextMenu(e => props.contextMenuCallback(e.event));
188
+ editorRef.current = editor;
189
+ props.setEditorRef(editor);
190
+ };
146
191
  createInputElement();
147
192
  return () => {
193
+ props.setEditorRef(undefined);
148
194
  if (editorRef.current) {
149
195
  editorRef.current.dispose();
150
196
  }
151
197
  };
152
198
  }, []);
199
+ const responseListenerRef = React.useRef();
200
+ // track chat model updates to keep our UI in sync
201
+ // - keep "inProgress" in sync with the request state
202
+ // - keep "changeSetUI" in sync with the change set
153
203
  React.useEffect(() => {
154
- const listener = lastRequest === null || lastRequest === void 0 ? void 0 : lastRequest.response.onDidChange(() => {
155
- if (lastRequest.response.isCanceled || lastRequest.response.isComplete || lastRequest.response.isError) {
156
- setInProgress(false);
204
+ const listener = props.chatModel.onDidChange(event => {
205
+ var _a;
206
+ if (event.kind === 'addRequest') {
207
+ if (event.request) {
208
+ setInProgress(ai_chat_1.ChatRequestModel.isInProgress(event.request));
209
+ }
210
+ (_a = responseListenerRef.current) === null || _a === void 0 ? void 0 : _a.dispose();
211
+ responseListenerRef.current = event.request.response.onDidChange(() => setInProgress(ai_chat_1.ChatRequestModel.isInProgress(event.request)));
212
+ }
213
+ else if (ai_chat_1.ChatChangeEvent.isChangeSetEvent(event)) {
214
+ if (event.changeSet) {
215
+ setChangeSetUI(buildChangeSetUI(event.changeSet, props.labelProvider, onDeleteChangeSet, onDeleteChangeSetElement));
216
+ }
217
+ else {
218
+ setChangeSetUI(undefined);
219
+ }
157
220
  }
158
221
  });
159
- return () => listener === null || listener === void 0 ? void 0 : listener.dispose();
160
- }, [lastRequest]);
222
+ setChangeSetUI(props.chatModel.changeSet ? buildChangeSetUI(props.chatModel.changeSet, props.labelProvider, onDeleteChangeSet, onDeleteChangeSetElement) : undefined);
223
+ return () => {
224
+ var _a;
225
+ listener === null || listener === void 0 ? void 0 : listener.dispose();
226
+ (_a = responseListenerRef.current) === null || _a === void 0 ? void 0 : _a.dispose();
227
+ responseListenerRef.current = undefined;
228
+ };
229
+ }, [props.chatModel]);
161
230
  function submit(value) {
231
+ if (!value || value.trim().length === 0) {
232
+ return;
233
+ }
162
234
  setInProgress(true);
163
235
  props.onQuery(value);
164
236
  if (editorRef.current) {
165
237
  editorRef.current.document.textEditorModel.setValue('');
166
238
  }
167
239
  }
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
240
  const onKeyDown = React.useCallback((event) => {
184
241
  var _a;
185
242
  if (!props.isEnabled) {
@@ -190,16 +247,119 @@ const ChatInput = (props) => {
190
247
  submit(((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.document.textEditorModel.getValue()) || '');
191
248
  }
192
249
  }, [props.isEnabled]);
250
+ const handleInputFocus = () => {
251
+ hidePlaceholderIfEditorFilled();
252
+ };
253
+ const handleOnChange = () => {
254
+ showPlaceholderIfEditorEmpty();
255
+ hidePlaceholderIfEditorFilled();
256
+ };
257
+ const handleInputBlur = () => {
258
+ showPlaceholderIfEditorEmpty();
259
+ };
260
+ const showPlaceholderIfEditorEmpty = () => {
261
+ var _a, _b;
262
+ if (!((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.getControl().getValue())) {
263
+ (_b = placeholderRef.current) === null || _b === void 0 ? void 0 : _b.classList.remove('hidden');
264
+ }
265
+ };
266
+ const hidePlaceholderIfEditorFilled = () => {
267
+ var _a, _b;
268
+ const value = (_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.getControl().getValue();
269
+ if (value && value.length > 0) {
270
+ (_b = placeholderRef.current) === null || _b === void 0 ? void 0 : _b.classList.add('hidden');
271
+ }
272
+ };
273
+ const leftOptions = props.showContext ? [{
274
+ title: 'Attach elements to context',
275
+ handler: () => { },
276
+ className: 'codicon-add'
277
+ }] : [];
278
+ const rightOptions = inProgress
279
+ ? [{
280
+ title: 'Cancel (Esc)',
281
+ handler: () => {
282
+ const latestRequest = getLatestRequest(props.chatModel);
283
+ if (latestRequest) {
284
+ props.onCancel(latestRequest);
285
+ }
286
+ setInProgress(false);
287
+ },
288
+ className: 'codicon-stop-circle'
289
+ }]
290
+ : [{
291
+ title: 'Send (Enter)',
292
+ handler: () => {
293
+ var _a;
294
+ if (props.isEnabled) {
295
+ submit(((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.document.textEditorModel.getValue()) || '');
296
+ }
297
+ },
298
+ className: 'codicon-send',
299
+ disabled: isInputEmpty || !props.isEnabled
300
+ }];
193
301
  return React.createElement("div", { className: 'theia-ChatInput' },
302
+ (changeSetUI === null || changeSetUI === void 0 ? void 0 : changeSetUI.elements) &&
303
+ React.createElement(ChangeSetBox, { changeSet: changeSetUI }),
194
304
  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"))),
197
- React.createElement("div", { className: "theia-ChatInputOptions" }, inProgress ? React.createElement("span", { className: "codicon codicon-stop-circle option", title: "Cancel (Esc)", onClick: () => {
198
- if (lastRequest) {
199
- props.onCancel(lastRequest);
200
- }
201
- setInProgress(false);
202
- } }) :
203
- React.createElement("span", { className: "codicon codicon-send option", title: "Send (Enter)", onClick: !props.isEnabled ? undefined : () => { var _a; return submit(((_a = editorRef.current) === null || _a === void 0 ? void 0 : _a.document.textEditorModel.getValue()) || ''); }, style: { cursor: !props.isEnabled ? 'default' : 'pointer', opacity: !props.isEnabled ? 0.5 : 1 } })));
305
+ React.createElement("div", { className: 'theia-ChatInput-Editor', ref: editorContainerRef, onKeyDown: onKeyDown, onFocus: handleInputFocus, onBlur: handleInputBlur },
306
+ React.createElement("div", { ref: placeholderRef, className: 'theia-ChatInput-Editor-Placeholder' }, "Ask a question")),
307
+ React.createElement(ChatInputOptions, { leftOptions: leftOptions, rightOptions: rightOptions })));
204
308
  };
309
+ const noPropagation = (handler) => (e) => {
310
+ handler();
311
+ e.stopPropagation();
312
+ };
313
+ const buildChangeSetUI = (changeSet, labelProvider, onDeleteChangeSet, onDeleteChangeSetElement) => ({
314
+ title: changeSet.title,
315
+ disabled: !hasPendingElementsToAccept(changeSet),
316
+ acceptAllPendingElements: () => acceptAllPendingElements(changeSet),
317
+ delete: () => onDeleteChangeSet(),
318
+ elements: changeSet.getElements().map(element => {
319
+ var _a, _b, _c, _d, _e, _f, _g, _h;
320
+ return ({
321
+ open: (_a = element === null || element === void 0 ? void 0 : element.open) === null || _a === void 0 ? void 0 : _a.bind(element),
322
+ iconClass: (_c = (_b = element.icon) !== null && _b !== void 0 ? _b : labelProvider.getIcon(element.uri)) !== null && _c !== void 0 ? _c : labelProvider.fileIcon,
323
+ nameClass: `${element.type} ${element.state}`,
324
+ name: (_d = element.name) !== null && _d !== void 0 ? _d : labelProvider.getName(element.uri),
325
+ additionalInfo: (_e = element.additionalInfo) !== null && _e !== void 0 ? _e : labelProvider.getDetails(element.uri),
326
+ openChange: (_f = element === null || element === void 0 ? void 0 : element.openChange) === null || _f === void 0 ? void 0 : _f.bind(element),
327
+ accept: element.state !== 'applied' ? (_g = element === null || element === void 0 ? void 0 : element.accept) === null || _g === void 0 ? void 0 : _g.bind(element) : undefined,
328
+ discard: element.state === 'applied' ? (_h = element === null || element === void 0 ? void 0 : element.discard) === null || _h === void 0 ? void 0 : _h.bind(element) : undefined,
329
+ delete: () => onDeleteChangeSetElement(changeSet.getElements().indexOf(element))
330
+ });
331
+ })
332
+ });
333
+ const ChangeSetBox = ({ changeSet }) => (React.createElement("div", { className: 'theia-ChatInput-ChangeSet-Box' },
334
+ React.createElement("div", { className: 'theia-ChatInput-ChangeSet-Header' },
335
+ React.createElement("h3", null, changeSet.title),
336
+ React.createElement("div", { className: 'theia-ChatInput-ChangeSet-Header-Actions' },
337
+ React.createElement("button", { className: 'theia-button', disabled: changeSet.disabled, title: 'Accept all pending changes', onClick: () => changeSet.acceptAllPendingElements() }, "Accept"),
338
+ React.createElement("span", { className: 'codicon codicon-close action', title: 'Delete Change Set', onClick: () => changeSet.delete() }))),
339
+ React.createElement("div", { className: 'theia-ChatInput-ChangeSet-List' },
340
+ React.createElement("ul", null, changeSet.elements.map((element, index) => (React.createElement("li", { key: index, title: 'Open Diff', onClick: () => { var _a; return (_a = element.openChange) === null || _a === void 0 ? void 0 : _a.call(element); } },
341
+ React.createElement("div", { className: `theia-ChatInput-ChangeSet-Icon ${element.iconClass}` }),
342
+ React.createElement("span", { className: `theia-ChatInput-ChangeSet-title ${element.nameClass}` }, element.name),
343
+ React.createElement("span", { className: 'theia-ChatInput-ChangeSet-additionalInfo' }, element.additionalInfo),
344
+ React.createElement("div", { className: 'theia-ChatInput-ChangeSet-Actions' },
345
+ element.open && (React.createElement("span", { className: 'codicon codicon-file action', title: 'Open Original File', onClick: noPropagation(() => element.open()) })),
346
+ element.discard && (React.createElement("span", { className: 'codicon codicon-discard action', title: 'Undo', onClick: noPropagation(() => element.discard()) })),
347
+ element.accept && (React.createElement("span", { className: 'codicon codicon-check action', title: 'Accept', onClick: noPropagation(() => element.accept()) })),
348
+ React.createElement("span", { className: 'codicon codicon-close action', title: 'Delete', onClick: noPropagation(() => element.delete()) })))))))));
349
+ const ChatInputOptions = ({ leftOptions, rightOptions }) => (React.createElement("div", { className: "theia-ChatInputOptions" },
350
+ React.createElement("div", { className: "theia-ChatInputOptions-left" }, leftOptions.map((option, index) => (React.createElement("span", { key: index, className: `codicon ${option.className} option ${option.disabled ? 'disabled' : ''}`, title: option.title, onClick: option.handler })))),
351
+ React.createElement("div", { className: "theia-ChatInputOptions-right" }, rightOptions.map((option, index) => (React.createElement("span", { key: index, className: `codicon ${option.className} option ${option.disabled ? 'disabled' : ''}`, title: option.title, onClick: option.handler }))))));
352
+ function acceptAllPendingElements(changeSet) {
353
+ acceptablePendingElements(changeSet).forEach(e => e.accept());
354
+ }
355
+ function hasPendingElementsToAccept(changeSet) {
356
+ return acceptablePendingElements(changeSet).length > 0;
357
+ }
358
+ function acceptablePendingElements(changeSet) {
359
+ return changeSet.getElements().filter(e => e.accept && (e.state === undefined || e.state === 'pending'));
360
+ }
361
+ function getLatestRequest(chatModel) {
362
+ const requests = chatModel.getRequests();
363
+ return requests.length > 0 ? requests[requests.length - 1] : undefined;
364
+ }
205
365
  //# sourceMappingURL=chat-input-widget.js.map
@@ -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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"}