@theia/ai-chat-ui 1.67.0-next.13 → 1.67.0-next.56

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 (163) hide show
  1. package/README.md +1 -0
  2. package/package.json +10 -10
  3. package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +4 -3
  4. package/lib/browser/ai-chat-ui-contribution.d.ts +0 -66
  5. package/lib/browser/ai-chat-ui-contribution.d.ts.map +0 -1
  6. package/lib/browser/ai-chat-ui-contribution.js +0 -587
  7. package/lib/browser/ai-chat-ui-contribution.js.map +0 -1
  8. package/lib/browser/ai-chat-ui-frontend-module.d.ts +0 -5
  9. package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +0 -1
  10. package/lib/browser/ai-chat-ui-frontend-module.js +0 -153
  11. package/lib/browser/ai-chat-ui-frontend-module.js.map +0 -1
  12. package/lib/browser/change-set-actions/change-set-accept-action.d.ts +0 -10
  13. package/lib/browser/change-set-actions/change-set-accept-action.d.ts.map +0 -1
  14. package/lib/browser/change-set-actions/change-set-accept-action.js +0 -47
  15. package/lib/browser/change-set-actions/change-set-accept-action.js.map +0 -1
  16. package/lib/browser/change-set-actions/change-set-action-service.d.ts +0 -31
  17. package/lib/browser/change-set-actions/change-set-action-service.d.ts.map +0 -1
  18. package/lib/browser/change-set-actions/change-set-action-service.js +0 -57
  19. package/lib/browser/change-set-actions/change-set-action-service.js.map +0 -1
  20. package/lib/browser/chat-input-agent-suggestions.d.ts +0 -11
  21. package/lib/browser/chat-input-agent-suggestions.d.ts.map +0 -1
  22. package/lib/browser/chat-input-agent-suggestions.js +0 -76
  23. package/lib/browser/chat-input-agent-suggestions.js.map +0 -1
  24. package/lib/browser/chat-input-history-contribution.d.ts +0 -17
  25. package/lib/browser/chat-input-history-contribution.d.ts.map +0 -1
  26. package/lib/browser/chat-input-history-contribution.js +0 -158
  27. package/lib/browser/chat-input-history-contribution.js.map +0 -1
  28. package/lib/browser/chat-input-history.d.ts +0 -32
  29. package/lib/browser/chat-input-history.d.ts.map +0 -1
  30. package/lib/browser/chat-input-history.js +0 -125
  31. package/lib/browser/chat-input-history.js.map +0 -1
  32. package/lib/browser/chat-input-mode-contribution.d.ts +0 -12
  33. package/lib/browser/chat-input-mode-contribution.d.ts.map +0 -1
  34. package/lib/browser/chat-input-mode-contribution.js +0 -77
  35. package/lib/browser/chat-input-mode-contribution.js.map +0 -1
  36. package/lib/browser/chat-input-widget.d.ts +0 -118
  37. package/lib/browser/chat-input-widget.d.ts.map +0 -1
  38. package/lib/browser/chat-input-widget.js +0 -1034
  39. package/lib/browser/chat-input-widget.js.map +0 -1
  40. package/lib/browser/chat-node-toolbar-action-contribution.d.ts +0 -56
  41. package/lib/browser/chat-node-toolbar-action-contribution.d.ts.map +0 -1
  42. package/lib/browser/chat-node-toolbar-action-contribution.js +0 -92
  43. package/lib/browser/chat-node-toolbar-action-contribution.js.map +0 -1
  44. package/lib/browser/chat-progress-message.d.ts +0 -7
  45. package/lib/browser/chat-progress-message.d.ts.map +0 -1
  46. package/lib/browser/chat-progress-message.js +0 -33
  47. package/lib/browser/chat-progress-message.js.map +0 -1
  48. package/lib/browser/chat-response-part-renderer.d.ts +0 -10
  49. package/lib/browser/chat-response-part-renderer.d.ts.map +0 -1
  50. package/lib/browser/chat-response-part-renderer.js +0 -20
  51. package/lib/browser/chat-response-part-renderer.js.map +0 -1
  52. package/lib/browser/chat-response-renderer/ai-selection-resolver.d.ts +0 -23
  53. package/lib/browser/chat-response-renderer/ai-selection-resolver.d.ts.map +0 -1
  54. package/lib/browser/chat-response-renderer/ai-selection-resolver.js +0 -148
  55. package/lib/browser/chat-response-renderer/ai-selection-resolver.js.map +0 -1
  56. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts +0 -73
  57. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts.map +0 -1
  58. package/lib/browser/chat-response-renderer/code-part-renderer.js +0 -227
  59. package/lib/browser/chat-response-renderer/code-part-renderer.js.map +0 -1
  60. package/lib/browser/chat-response-renderer/command-part-renderer.d.ts +0 -12
  61. package/lib/browser/chat-response-renderer/command-part-renderer.d.ts.map +0 -1
  62. package/lib/browser/chat-response-renderer/command-part-renderer.js +0 -67
  63. package/lib/browser/chat-response-renderer/command-part-renderer.js.map +0 -1
  64. package/lib/browser/chat-response-renderer/delegation-response-renderer.d.ts +0 -14
  65. package/lib/browser/chat-response-renderer/delegation-response-renderer.d.ts.map +0 -1
  66. package/lib/browser/chat-response-renderer/delegation-response-renderer.js +0 -144
  67. package/lib/browser/chat-response-renderer/delegation-response-renderer.js.map +0 -1
  68. package/lib/browser/chat-response-renderer/error-part-renderer.d.ts +0 -9
  69. package/lib/browser/chat-response-renderer/error-part-renderer.d.ts.map +0 -1
  70. package/lib/browser/chat-response-renderer/error-part-renderer.js +0 -40
  71. package/lib/browser/chat-response-renderer/error-part-renderer.js.map +0 -1
  72. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.d.ts +0 -12
  73. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.d.ts.map +0 -1
  74. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.js +0 -54
  75. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.js.map +0 -1
  76. package/lib/browser/chat-response-renderer/index.d.ts +0 -13
  77. package/lib/browser/chat-response-renderer/index.d.ts.map +0 -1
  78. package/lib/browser/chat-response-renderer/index.js +0 -31
  79. package/lib/browser/chat-response-renderer/index.js.map +0 -1
  80. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +0 -36
  81. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +0 -1
  82. package/lib/browser/chat-response-renderer/markdown-part-renderer.js +0 -128
  83. package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +0 -1
  84. package/lib/browser/chat-response-renderer/progress-part-renderer.d.ts +0 -9
  85. package/lib/browser/chat-response-renderer/progress-part-renderer.d.ts.map +0 -1
  86. package/lib/browser/chat-response-renderer/progress-part-renderer.js +0 -39
  87. package/lib/browser/chat-response-renderer/progress-part-renderer.js.map +0 -1
  88. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts +0 -10
  89. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts.map +0 -1
  90. package/lib/browser/chat-response-renderer/question-part-renderer.js +0 -49
  91. package/lib/browser/chat-response-renderer/question-part-renderer.js.map +0 -1
  92. package/lib/browser/chat-response-renderer/text-part-renderer.d.ts +0 -9
  93. package/lib/browser/chat-response-renderer/text-part-renderer.d.ts.map +0 -1
  94. package/lib/browser/chat-response-renderer/text-part-renderer.js +0 -43
  95. package/lib/browser/chat-response-renderer/text-part-renderer.js.map +0 -1
  96. package/lib/browser/chat-response-renderer/text-part-renderer.spec.d.ts +0 -2
  97. package/lib/browser/chat-response-renderer/text-part-renderer.spec.d.ts.map +0 -1
  98. package/lib/browser/chat-response-renderer/text-part-renderer.spec.js +0 -46
  99. package/lib/browser/chat-response-renderer/text-part-renderer.spec.js.map +0 -1
  100. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts +0 -9
  101. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts.map +0 -1
  102. package/lib/browser/chat-response-renderer/thinking-part-renderer.js +0 -42
  103. package/lib/browser/chat-response-renderer/thinking-part-renderer.js.map +0 -1
  104. package/lib/browser/chat-response-renderer/tool-confirmation.d.ts +0 -17
  105. package/lib/browser/chat-response-renderer/tool-confirmation.d.ts.map +0 -1
  106. package/lib/browser/chat-response-renderer/tool-confirmation.js +0 -122
  107. package/lib/browser/chat-response-renderer/tool-confirmation.js.map +0 -1
  108. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts +0 -20
  109. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +0 -1
  110. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +0 -223
  111. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +0 -1
  112. package/lib/browser/chat-response-renderer/unknown-part-renderer.d.ts +0 -9
  113. package/lib/browser/chat-response-renderer/unknown-part-renderer.d.ts.map +0 -1
  114. package/lib/browser/chat-response-renderer/unknown-part-renderer.js +0 -42
  115. package/lib/browser/chat-response-renderer/unknown-part-renderer.js.map +0 -1
  116. package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts +0 -4
  117. package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts.map +0 -1
  118. package/lib/browser/chat-tree-view/chat-view-tree-container.js +0 -33
  119. package/lib/browser/chat-tree-view/chat-view-tree-container.js.map +0 -1
  120. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.d.ts +0 -38
  121. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.d.ts.map +0 -1
  122. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.js +0 -88
  123. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.js.map +0 -1
  124. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +0 -120
  125. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +0 -1
  126. package/lib/browser/chat-tree-view/chat-view-tree-widget.js +0 -654
  127. package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +0 -1
  128. package/lib/browser/chat-tree-view/index.d.ts +0 -3
  129. package/lib/browser/chat-tree-view/index.d.ts.map +0 -1
  130. package/lib/browser/chat-tree-view/index.js +0 -21
  131. package/lib/browser/chat-tree-view/index.js.map +0 -1
  132. package/lib/browser/chat-tree-view/sub-chat-widget.d.ts +0 -22
  133. package/lib/browser/chat-tree-view/sub-chat-widget.d.ts.map +0 -1
  134. package/lib/browser/chat-tree-view/sub-chat-widget.js +0 -92
  135. package/lib/browser/chat-tree-view/sub-chat-widget.js.map +0 -1
  136. package/lib/browser/chat-view-commands.d.ts +0 -15
  137. package/lib/browser/chat-view-commands.d.ts.map +0 -1
  138. package/lib/browser/chat-view-commands.js +0 -76
  139. package/lib/browser/chat-view-commands.js.map +0 -1
  140. package/lib/browser/chat-view-contribution.d.ts +0 -21
  141. package/lib/browser/chat-view-contribution.d.ts.map +0 -1
  142. package/lib/browser/chat-view-contribution.js +0 -183
  143. package/lib/browser/chat-view-contribution.js.map +0 -1
  144. package/lib/browser/chat-view-language-contribution.d.ts +0 -41
  145. package/lib/browser/chat-view-language-contribution.d.ts.map +0 -1
  146. package/lib/browser/chat-view-language-contribution.js +0 -269
  147. package/lib/browser/chat-view-language-contribution.js.map +0 -1
  148. package/lib/browser/chat-view-widget-toolbar-contribution.d.ts +0 -20
  149. package/lib/browser/chat-view-widget-toolbar-contribution.d.ts.map +0 -1
  150. package/lib/browser/chat-view-widget-toolbar-contribution.js +0 -115
  151. package/lib/browser/chat-view-widget-toolbar-contribution.js.map +0 -1
  152. package/lib/browser/chat-view-widget.d.ts +0 -60
  153. package/lib/browser/chat-view-widget.d.ts.map +0 -1
  154. package/lib/browser/chat-view-widget.js +0 -243
  155. package/lib/browser/chat-view-widget.js.map +0 -1
  156. package/lib/browser/context-variable-picker.d.ts +0 -9
  157. package/lib/browser/context-variable-picker.d.ts.map +0 -1
  158. package/lib/browser/context-variable-picker.js +0 -86
  159. package/lib/browser/context-variable-picker.js.map +0 -1
  160. package/lib/browser/session-settings-dialog.d.ts +0 -35
  161. package/lib/browser/session-settings-dialog.d.ts.map +0 -1
  162. package/lib/browser/session-settings-dialog.js +0 -118
  163. package/lib/browser/session-settings-dialog.js.map +0 -1
@@ -1,587 +0,0 @@
1
- "use strict";
2
- // *****************************************************************************
3
- // Copyright (C) 2024 EclipseSource GmbH.
4
- //
5
- // This program and the accompanying materials are made available under the
6
- // terms of the Eclipse Public License v. 2.0 which is available at
7
- // http://www.eclipse.org/legal/epl-2.0.
8
- //
9
- // This Source Code may also be made available under the following Secondary
10
- // Licenses when the conditions for such availability set forth in the Eclipse
11
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
- // with the GNU Classpath Exception which is available at
13
- // https://www.gnu.org/software/classpath/license.html.
14
- //
15
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
- // *****************************************************************************
17
- var AIChatContribution_1;
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.AIChatContribution = exports.AI_CHAT_TOGGLE_COMMAND_ID = void 0;
20
- const tslib_1 = require("tslib");
21
- const inversify_1 = require("@theia/core/shared/inversify");
22
- const core_1 = require("@theia/core");
23
- const logger_1 = require("@theia/core/lib/common/logger");
24
- const chat_view_commands_1 = require("./chat-view-commands");
25
- const ai_chat_1 = require("@theia/ai-chat");
26
- const chat_agent_service_1 = require("@theia/ai-chat/lib/common/chat-agent-service");
27
- const editor_manager_1 = require("@theia/editor/lib/browser/editor-manager");
28
- const view_contribution_1 = require("@theia/core/lib/browser/shell/view-contribution");
29
- const chat_view_widget_1 = require("./chat-view-widget");
30
- const promise_util_1 = require("@theia/core/lib/common/promise-util");
31
- const secondary_window_handler_1 = require("@theia/core/lib/browser/secondary-window-handler");
32
- const date_fns_1 = require("date-fns");
33
- const locales = require("date-fns/locale");
34
- const browser_1 = require("@theia/ai-core/lib/browser");
35
- const chat_node_toolbar_action_contribution_1 = require("./chat-node-toolbar-action-contribution");
36
- const chat_tree_view_1 = require("./chat-tree-view");
37
- const task_context_variable_1 = require("@theia/ai-chat/lib/browser/task-context-variable");
38
- const task_context_service_1 = require("@theia/ai-chat/lib/browser/task-context-service");
39
- exports.AI_CHAT_TOGGLE_COMMAND_ID = 'aiChat:toggle';
40
- let AIChatContribution = AIChatContribution_1 = class AIChatContribution extends view_contribution_1.AbstractViewContribution {
41
- constructor() {
42
- super({
43
- widgetId: chat_view_widget_1.ChatViewWidget.ID,
44
- widgetName: chat_view_widget_1.ChatViewWidget.LABEL,
45
- defaultWidgetOptions: {
46
- area: 'right',
47
- rank: 100
48
- },
49
- toggleCommandId: exports.AI_CHAT_TOGGLE_COMMAND_ID,
50
- toggleKeybinding: core_1.isOSX ? 'ctrl+cmd+i' : 'ctrl+alt+i'
51
- });
52
- /**
53
- * Store whether there are persisted sessions to make this information available in
54
- * command enablement checks which are synchronous.
55
- */
56
- this.hasPersistedSessions = false;
57
- }
58
- initialize() {
59
- this.chatService.onSessionEvent(event => {
60
- if (!(0, ai_chat_1.isActiveSessionChangedEvent)(event)) {
61
- return;
62
- }
63
- if (event.focus) {
64
- this.openView({ activate: true });
65
- }
66
- });
67
- this.checkPersistedSessions();
68
- }
69
- async checkPersistedSessions() {
70
- try {
71
- const index = await this.chatService.getPersistedSessions();
72
- this.hasPersistedSessions = Object.keys(index).length > 0;
73
- }
74
- catch (e) {
75
- this.logger.error('Failed to check persisted AI sessions', e);
76
- this.hasPersistedSessions = false;
77
- }
78
- }
79
- registerCommands(registry) {
80
- super.registerCommands(registry);
81
- registry.registerCommand(chat_view_commands_1.ChatCommands.SCROLL_LOCK_WIDGET, {
82
- isEnabled: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked),
83
- isVisible: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked),
84
- execute: widget => this.withWidget(widget, chatWidget => {
85
- chatWidget.lock();
86
- return true;
87
- })
88
- });
89
- registry.registerCommand(chat_view_commands_1.ChatCommands.SCROLL_UNLOCK_WIDGET, {
90
- isEnabled: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked),
91
- isVisible: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked),
92
- execute: widget => this.withWidget(widget, chatWidget => {
93
- chatWidget.unlock();
94
- return true;
95
- })
96
- });
97
- registry.registerCommand(chat_view_commands_1.AI_CHAT_NEW_CHAT_WINDOW_COMMAND, {
98
- execute: () => this.openView().then(() => this.chatService.createSession(ai_chat_1.ChatAgentLocation.Panel, { focus: true })),
99
- isVisible: widget => this.activationService.isActive,
100
- isEnabled: widget => this.activationService.isActive,
101
- });
102
- registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_NEW_WITH_TASK_CONTEXT, {
103
- execute: async () => {
104
- const activeSession = this.chatService.getActiveSession();
105
- const id = await this.summarizeActiveSession();
106
- if (!id || !activeSession) {
107
- return;
108
- }
109
- const newSession = this.chatService.createSession(ai_chat_1.ChatAgentLocation.Panel, { focus: true }, activeSession.pinnedAgent);
110
- const summaryVariable = { variable: task_context_variable_1.TASK_CONTEXT_VARIABLE, arg: id };
111
- newSession.model.context.addVariables(summaryVariable);
112
- },
113
- isVisible: () => false
114
- });
115
- registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_SUMMARIZE_CURRENT_SESSION, {
116
- execute: async () => this.summarizeActiveSession(),
117
- isVisible: widget => {
118
- if (!this.activationService.isActive) {
119
- return false;
120
- }
121
- if (widget && !this.withWidget(widget)) {
122
- return false;
123
- }
124
- const activeSession = this.chatService.getActiveSession();
125
- return (activeSession === null || activeSession === void 0 ? void 0 : activeSession.model.location) === ai_chat_1.ChatAgentLocation.Panel
126
- && !this.taskContextService.hasSummary(activeSession);
127
- },
128
- isEnabled: widget => {
129
- if (!this.activationService.isActive) {
130
- return false;
131
- }
132
- if (widget && !this.withWidget(widget)) {
133
- return false;
134
- }
135
- const activeSession = this.chatService.getActiveSession();
136
- return (activeSession === null || activeSession === void 0 ? void 0 : activeSession.model.location) === ai_chat_1.ChatAgentLocation.Panel
137
- && !activeSession.model.isEmpty()
138
- && !this.taskContextService.hasSummary(activeSession);
139
- }
140
- });
141
- registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_OPEN_SUMMARY_FOR_CURRENT_SESSION, {
142
- execute: async () => {
143
- const id = await this.summarizeActiveSession();
144
- if (!id) {
145
- return;
146
- }
147
- await this.taskContextService.open(id);
148
- },
149
- isVisible: widget => {
150
- if (!this.activationService.isActive) {
151
- return false;
152
- }
153
- if (widget && !this.withWidget(widget)) {
154
- return false;
155
- }
156
- const activeSession = this.chatService.getActiveSession();
157
- return !!activeSession && this.taskContextService.hasSummary(activeSession);
158
- },
159
- isEnabled: widget => {
160
- if (!this.activationService.isActive) {
161
- return false;
162
- }
163
- return this.withWidget(widget, () => true);
164
- }
165
- });
166
- registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_INITIATE_SESSION_WITH_TASK_CONTEXT, {
167
- execute: async () => {
168
- const selectedContextId = await this.selectTaskContextWithMarking();
169
- if (!selectedContextId) {
170
- return;
171
- }
172
- const selectedAgent = await this.selectAgent('Coder');
173
- if (!selectedAgent) {
174
- return;
175
- }
176
- const newSession = this.chatService.createSession(ai_chat_1.ChatAgentLocation.Panel, { focus: true }, selectedAgent);
177
- newSession.model.context.addVariables({ variable: task_context_variable_1.TASK_CONTEXT_VARIABLE, arg: selectedContextId });
178
- },
179
- isVisible: () => this.activationService.isActive,
180
- isEnabled: () => this.activationService.isActive
181
- });
182
- registry.registerCommand(chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND, {
183
- execute: () => this.selectChat(),
184
- isEnabled: widget => {
185
- if (!this.activationService.isActive || !this.withWidget(widget)) {
186
- return false;
187
- }
188
- // Enable if there are active sessions with titles OR persisted sessions
189
- return this.chatService.getSessions().some(session => !!session.title) || this.hasPersistedSessions;
190
- },
191
- isVisible: widget => this.activationService.isActive && this.withWidget(widget)
192
- });
193
- registry.registerCommand(chat_node_toolbar_action_contribution_1.ChatNodeToolbarCommands.EDIT, {
194
- isEnabled: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && !node.request.isEditing,
195
- isVisible: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && !node.request.isEditing,
196
- execute: (node) => {
197
- node.request.enableEdit();
198
- }
199
- });
200
- registry.registerCommand(chat_node_toolbar_action_contribution_1.ChatNodeToolbarCommands.CANCEL, {
201
- isEnabled: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && node.request.isEditing,
202
- isVisible: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && node.request.isEditing,
203
- execute: (node) => {
204
- node.request.cancelEdit();
205
- }
206
- });
207
- registry.registerCommand(chat_node_toolbar_action_contribution_1.ChatNodeToolbarCommands.RETRY, {
208
- isEnabled: node => (0, chat_tree_view_1.isResponseNode)(node) && (node.response.isError || node.response.isCanceled),
209
- isVisible: node => (0, chat_tree_view_1.isResponseNode)(node) && (node.response.isError || node.response.isCanceled),
210
- execute: async (node) => {
211
- try {
212
- // Get the session for this response node
213
- const session = this.chatService.getActiveSession();
214
- if (!session) {
215
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/sessionNotFoundForRetry', 'Session not found for retry'));
216
- return;
217
- }
218
- // Find the request associated with this response
219
- const request = session.model.getRequests().find(req => req.response.id === node.response.id);
220
- if (!request) {
221
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/requestNotFoundForRetry', 'Request not found for retry'));
222
- return;
223
- }
224
- // Send the same request again using the chat service
225
- await this.chatService.sendRequest(node.sessionId, request.request);
226
- }
227
- catch (error) {
228
- console.error('Failed to retry chat message:', error);
229
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/failedToRetry', 'Failed to retry message'));
230
- }
231
- }
232
- });
233
- }
234
- registerToolbarItems(registry) {
235
- registry.registerItem({
236
- id: chat_view_commands_1.AI_CHAT_NEW_CHAT_WINDOW_COMMAND.id,
237
- command: chat_view_commands_1.AI_CHAT_NEW_CHAT_WINDOW_COMMAND.id,
238
- tooltip: chat_view_commands_1.AI_CHAT_NEW_CHAT_WINDOW_COMMAND.label,
239
- isVisible: widget => this.activationService.isActive && this.withWidget(widget),
240
- when: browser_1.ENABLE_AI_CONTEXT_KEY
241
- });
242
- registry.registerItem({
243
- id: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.id,
244
- command: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.id,
245
- tooltip: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.label,
246
- isVisible: widget => this.activationService.isActive && this.withWidget(widget),
247
- when: browser_1.ENABLE_AI_CONTEXT_KEY
248
- });
249
- registry.registerItem({
250
- id: 'chat-view.' + browser_1.AI_SHOW_SETTINGS_COMMAND.id,
251
- command: browser_1.AI_SHOW_SETTINGS_COMMAND.id,
252
- group: 'ai-settings',
253
- priority: 3,
254
- tooltip: core_1.nls.localize('theia/ai-chat-ui/open-settings-tooltip', 'Open AI settings...'),
255
- isVisible: widget => this.activationService.isActive && this.withWidget(widget),
256
- when: browser_1.ENABLE_AI_CONTEXT_KEY
257
- });
258
- const sessionSummarizibilityChangedEmitter = new core_1.Emitter();
259
- this.taskContextService.onDidChange(() => sessionSummarizibilityChangedEmitter.fire());
260
- this.chatService.onSessionEvent(event => event.type === 'activeChange' && sessionSummarizibilityChangedEmitter.fire());
261
- this.activationService.onDidChangeActiveStatus(() => sessionSummarizibilityChangedEmitter.fire());
262
- registry.registerItem({
263
- id: 'chat-view.' + chat_view_commands_1.ChatCommands.AI_CHAT_SUMMARIZE_CURRENT_SESSION.id,
264
- command: chat_view_commands_1.ChatCommands.AI_CHAT_SUMMARIZE_CURRENT_SESSION.id,
265
- onDidChange: sessionSummarizibilityChangedEmitter.event,
266
- when: browser_1.ENABLE_AI_CONTEXT_KEY
267
- });
268
- registry.registerItem({
269
- id: 'chat-view.' + chat_view_commands_1.ChatCommands.AI_CHAT_OPEN_SUMMARY_FOR_CURRENT_SESSION.id,
270
- command: chat_view_commands_1.ChatCommands.AI_CHAT_OPEN_SUMMARY_FOR_CURRENT_SESSION.id,
271
- onDidChange: sessionSummarizibilityChangedEmitter.event,
272
- when: browser_1.ENABLE_AI_CONTEXT_KEY
273
- });
274
- }
275
- async selectChat(sessionId) {
276
- let activeSessionId = sessionId;
277
- if (!activeSessionId) {
278
- const item = await this.askForChatSession();
279
- if (item === undefined) {
280
- return;
281
- }
282
- activeSessionId = item.id;
283
- }
284
- this.chatService.setActiveSession(activeSessionId, { focus: true });
285
- }
286
- async askForChatSession() {
287
- const getItems = async () => {
288
- const activeSessions = this.chatService.getSessions()
289
- .filter(session => session.title)
290
- .map(session => ({
291
- session,
292
- isActive: true,
293
- lastDate: session.lastInteraction ? session.lastInteraction.getTime() : 0
294
- }));
295
- // Try to load persisted sessions, but don't fail if it doesn't work
296
- let persistedSessions = [];
297
- try {
298
- const persistedIndex = await this.chatService.getPersistedSessions();
299
- const activeIds = new Set(activeSessions.map(s => s.session.id));
300
- persistedSessions = Object.values(persistedIndex)
301
- .filter(metadata => !activeIds.has(metadata.sessionId))
302
- .map(metadata => ({
303
- metadata,
304
- isActive: false,
305
- lastDate: metadata.saveDate
306
- }));
307
- }
308
- catch (error) {
309
- this.logger.error('Failed to load persisted sessions, showing only active sessions', error);
310
- // Continue with just active sessions
311
- }
312
- // Combine and sort by last interaction/message date
313
- const allSessions = [
314
- ...activeSessions.map(s => {
315
- var _a;
316
- return ({
317
- isActive: true,
318
- id: s.session.id,
319
- title: s.session.title,
320
- lastDate: s.lastDate,
321
- firstRequestText: (_a = s.session.model.getRequests().at(0)) === null || _a === void 0 ? void 0 : _a.request.text
322
- });
323
- }),
324
- ...persistedSessions.map(s => ({
325
- isActive: false,
326
- id: s.metadata.sessionId,
327
- title: s.metadata.title,
328
- lastDate: s.lastDate,
329
- firstRequestText: undefined
330
- }))
331
- ].sort((a, b) => b.lastDate - a.lastDate);
332
- return allSessions.map(session => {
333
- // Add icon for persisted sessions to visually distinguish them
334
- const icon = session.isActive ? '' : '$(archive) ';
335
- const label = `${icon}${session.title}`;
336
- return ({
337
- label,
338
- description: (0, date_fns_1.formatDistance)(new Date(session.lastDate), new Date(), { addSuffix: false, locale: getDateFnsLocale() }),
339
- detail: session.firstRequestText || (session.isActive ? undefined : core_1.nls.localize('theia/ai/chat-ui/persistedSession', 'Persisted session (click to restore)')),
340
- id: session.id,
341
- buttons: [AIChatContribution_1.RENAME_CHAT_BUTTON, AIChatContribution_1.REMOVE_CHAT_BUTTON]
342
- });
343
- });
344
- };
345
- const defer = new promise_util_1.Deferred();
346
- const quickPick = this.quickInputService.createQuickPick();
347
- quickPick.placeholder = core_1.nls.localize('theia/ai/chat-ui/selectChat', 'Select chat');
348
- quickPick.canSelectMany = false;
349
- quickPick.busy = true;
350
- quickPick.show();
351
- // Load items asynchronously
352
- getItems().then(items => {
353
- quickPick.items = items;
354
- quickPick.busy = false;
355
- }).catch(error => {
356
- this.logger.error('Failed to load chat sessions', error);
357
- quickPick.busy = false;
358
- quickPick.placeholder = core_1.nls.localize('theia/ai/chat-ui/failedToLoadChats', 'Failed to load chat sessions');
359
- });
360
- quickPick.onDidTriggerItemButton(async (context) => {
361
- if (context.button === AIChatContribution_1.RENAME_CHAT_BUTTON) {
362
- quickPick.hide();
363
- this.quickInputService.input({
364
- placeHolder: core_1.nls.localize('theia/ai/chat-ui/enterChatName', 'Enter chat name')
365
- }).then(name => {
366
- if (name && name.length > 0) {
367
- const session = this.chatService.getSession(context.item.id);
368
- if (session) {
369
- session.title = name;
370
- }
371
- }
372
- });
373
- }
374
- else if (context.button === AIChatContribution_1.REMOVE_CHAT_BUTTON) {
375
- // Wait for deletion to complete before refreshing the list
376
- this.chatService.deleteSession(context.item.id).then(() => getItems()).then(items => {
377
- quickPick.items = items;
378
- if (items.length === 0) {
379
- quickPick.hide();
380
- }
381
- // Update persisted sessions flag after deletion
382
- this.checkPersistedSessions();
383
- }).catch(error => {
384
- this.logger.error('Failed to delete chat session', error);
385
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/failedToDeleteSession', 'Failed to delete chat session'));
386
- });
387
- }
388
- });
389
- quickPick.onDidAccept(async () => {
390
- const selectedItem = quickPick.selectedItems[0];
391
- if (selectedItem) {
392
- // Restore session if not already loaded
393
- const session = this.chatService.getSession(selectedItem.id);
394
- if (!session) {
395
- try {
396
- await this.chatService.getOrRestoreSession(selectedItem.id);
397
- // Update persisted sessions flag after restoration
398
- this.checkPersistedSessions();
399
- }
400
- catch (error) {
401
- this.logger.error('Failed to restore chat session', error);
402
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/failedToRestoreSession', 'Failed to restore chat session'));
403
- defer.resolve(undefined);
404
- quickPick.hide();
405
- return;
406
- }
407
- }
408
- }
409
- defer.resolve(selectedItem);
410
- quickPick.hide();
411
- });
412
- quickPick.onDidHide(() => defer.resolve(undefined));
413
- return defer.promise;
414
- }
415
- withWidget(widget = this.tryGetWidget(), predicate = () => true) {
416
- return widget instanceof chat_view_widget_1.ChatViewWidget ? predicate(widget) : false;
417
- }
418
- extractChatView(chatView) {
419
- this.secondaryWindowHandler.moveWidgetToSecondaryWindow(chatView);
420
- }
421
- canExtractChatView(chatView) {
422
- return !chatView.secondaryWindow;
423
- }
424
- async summarizeActiveSession() {
425
- const activeSession = this.chatService.getActiveSession();
426
- if (!activeSession) {
427
- return;
428
- }
429
- return this.taskContextService.summarize(activeSession).catch(err => {
430
- console.warn('Error while summarizing session:', err);
431
- this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/unableToSummarizeCurrentSession', 'Unable to summarize current session. Please confirm that the summary agent is not disabled.'));
432
- return undefined;
433
- });
434
- }
435
- /**
436
- * Prompts the user to select a chat agent
437
- * @returns The selected agent or undefined if cancelled
438
- */
439
- /**
440
- * Prompts the user to select a chat agent with an optional default (pre-selected) agent.
441
- * @param defaultAgentId The id of the agent to pre-select, if present
442
- * @returns The selected agent or undefined if cancelled
443
- */
444
- async selectAgent(defaultAgentId) {
445
- const agents = this.chatAgentService.getAgents();
446
- if (agents.length === 0) {
447
- this.messageService.warn(core_1.nls.localize('theia/ai/chat-ui/noChatAgentsAvailable', 'No chat agents available.'));
448
- return undefined;
449
- }
450
- const items = agents.map(agent => ({
451
- label: agent.name || agent.id,
452
- description: agent.description,
453
- id: agent.id
454
- }));
455
- let preselected = undefined;
456
- if (defaultAgentId) {
457
- preselected = items.find(item => item.id === defaultAgentId);
458
- }
459
- const selected = await this.quickInputService.showQuickPick(items, {
460
- placeholder: core_1.nls.localize('theia/ai/chat-ui/selectAgentQuickPickPlaceholder', 'Select an agent for the new session'),
461
- activeItem: preselected
462
- });
463
- if (!selected) {
464
- return undefined;
465
- }
466
- return this.chatAgentService.getAgent(selected.id);
467
- }
468
- /**
469
- * Prompts the user to select a task context with special marking for currently opened files
470
- * @returns The selected task context ID or undefined if cancelled
471
- */
472
- async selectTaskContextWithMarking() {
473
- const contexts = this.taskContextService.getAll();
474
- const openedFilesInfo = this.getOpenedTaskContextFiles();
475
- // Create items with opened files marked and prioritized
476
- const items = contexts.map(summary => {
477
- const isOpened = openedFilesInfo.openedIds.includes(summary.id);
478
- const isActive = openedFilesInfo.activeId === summary.id;
479
- return {
480
- label: isOpened ? `📄 ${summary.label} (${core_1.nls.localize('theia/ai/chat-ui/selectTaskContextQuickPickItem/currentlyOpen', 'currently open')})` : summary.label,
481
- description: summary.id,
482
- id: summary.id,
483
- // We'll sort active file first, then opened files, then others
484
- sortText: isActive ? `0-${summary.label}` : isOpened ? `1-${summary.label}` : `2-${summary.label}`
485
- };
486
- }).sort((a, b) => a.sortText.localeCompare(b.sortText));
487
- const selected = await this.quickInputService.showQuickPick(items, {
488
- placeholder: core_1.nls.localize('theia/ai/chat-ui/selectTaskContextQuickPickPlaceholder', 'Select a task context to attach')
489
- });
490
- return selected === null || selected === void 0 ? void 0 : selected.id;
491
- }
492
- /**
493
- * Returns information about task context files that are currently opened
494
- * @returns Object with arrays of opened context IDs and the active context ID
495
- */
496
- getOpenedTaskContextFiles() {
497
- var _a;
498
- // Get all contexts with their URIs
499
- const allContexts = this.taskContextService.getAll();
500
- const contextMap = new Map(); // Map of URI -> ID
501
- // Create a map of URI string -> context ID for lookup
502
- for (const context of allContexts) {
503
- if (context.uri) {
504
- contextMap.set(context.uri.toString(), context.id);
505
- }
506
- }
507
- // Get all open editor URIs
508
- const openEditorUris = this.editorManager.all.map(widget => widget.editor.uri.toString());
509
- // Get the currently active/focused editor URI if any
510
- const activeEditorUri = (_a = this.editorManager.currentEditor) === null || _a === void 0 ? void 0 : _a.editor.uri.toString();
511
- let activeContextId;
512
- if (activeEditorUri) {
513
- activeContextId = contextMap.get(activeEditorUri);
514
- }
515
- // Filter to only task context files that are currently opened
516
- const openedContextIds = [];
517
- for (const uri of openEditorUris) {
518
- const contextId = contextMap.get(uri);
519
- if (contextId) {
520
- openedContextIds.push(contextId);
521
- }
522
- }
523
- return { openedIds: openedContextIds, activeId: activeContextId };
524
- }
525
- };
526
- exports.AIChatContribution = AIChatContribution;
527
- AIChatContribution.RENAME_CHAT_BUTTON = {
528
- iconClass: 'codicon-edit',
529
- tooltip: core_1.nls.localize('theia/ai/chat-ui/renameChat', 'Rename Chat'),
530
- };
531
- AIChatContribution.REMOVE_CHAT_BUTTON = {
532
- iconClass: 'codicon-remove-close',
533
- tooltip: core_1.nls.localize('theia/ai/chat-ui/removeChat', 'Remove Chat'),
534
- };
535
- tslib_1.__decorate([
536
- (0, inversify_1.inject)(ai_chat_1.ChatService),
537
- tslib_1.__metadata("design:type", Object)
538
- ], AIChatContribution.prototype, "chatService", void 0);
539
- tslib_1.__decorate([
540
- (0, inversify_1.inject)(core_1.QuickInputService),
541
- tslib_1.__metadata("design:type", Object)
542
- ], AIChatContribution.prototype, "quickInputService", void 0);
543
- tslib_1.__decorate([
544
- (0, inversify_1.inject)(task_context_service_1.TaskContextService),
545
- tslib_1.__metadata("design:type", task_context_service_1.TaskContextService)
546
- ], AIChatContribution.prototype, "taskContextService", void 0);
547
- tslib_1.__decorate([
548
- (0, inversify_1.inject)(core_1.MessageService),
549
- tslib_1.__metadata("design:type", core_1.MessageService)
550
- ], AIChatContribution.prototype, "messageService", void 0);
551
- tslib_1.__decorate([
552
- (0, inversify_1.inject)(chat_agent_service_1.ChatAgentService),
553
- tslib_1.__metadata("design:type", Object)
554
- ], AIChatContribution.prototype, "chatAgentService", void 0);
555
- tslib_1.__decorate([
556
- (0, inversify_1.inject)(editor_manager_1.EditorManager),
557
- tslib_1.__metadata("design:type", editor_manager_1.EditorManager)
558
- ], AIChatContribution.prototype, "editorManager", void 0);
559
- tslib_1.__decorate([
560
- (0, inversify_1.inject)(browser_1.AIActivationService),
561
- tslib_1.__metadata("design:type", Object)
562
- ], AIChatContribution.prototype, "activationService", void 0);
563
- tslib_1.__decorate([
564
- (0, inversify_1.inject)(logger_1.ILogger),
565
- (0, inversify_1.named)('AIChatContribution'),
566
- tslib_1.__metadata("design:type", Object)
567
- ], AIChatContribution.prototype, "logger", void 0);
568
- tslib_1.__decorate([
569
- (0, inversify_1.inject)(secondary_window_handler_1.SecondaryWindowHandler),
570
- tslib_1.__metadata("design:type", secondary_window_handler_1.SecondaryWindowHandler)
571
- ], AIChatContribution.prototype, "secondaryWindowHandler", void 0);
572
- tslib_1.__decorate([
573
- (0, inversify_1.postConstruct)(),
574
- tslib_1.__metadata("design:type", Function),
575
- tslib_1.__metadata("design:paramtypes", []),
576
- tslib_1.__metadata("design:returntype", void 0)
577
- ], AIChatContribution.prototype, "initialize", null);
578
- exports.AIChatContribution = AIChatContribution = AIChatContribution_1 = tslib_1.__decorate([
579
- (0, inversify_1.injectable)(),
580
- tslib_1.__metadata("design:paramtypes", [])
581
- ], AIChatContribution);
582
- function getDateFnsLocale() {
583
- var _a;
584
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
585
- return core_1.nls.locale ? (_a = locales[core_1.nls.locale]) !== null && _a !== void 0 ? _a : locales.enUS : locales.enUS;
586
- }
587
- //# sourceMappingURL=ai-chat-ui-contribution.js.map
@@ -1 +0,0 @@
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,5 +0,0 @@
1
- import '../../src/browser/style/index.css';
2
- import { ContainerModule } from '@theia/core/shared/inversify';
3
- declare const _default: ContainerModule;
4
- export default _default;
5
- //# sourceMappingURL=ai-chat-ui-frontend-module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-chat-ui-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-frontend-module.ts"],"names":[],"mappings":"AAgBA,OAAO,mCAAmC,CAAC;AAI3C,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;;AA2C3E,wBAgHG"}