@theia/ai-chat-ui 1.67.0-next.3 → 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 (165) hide show
  1. package/README.md +1 -0
  2. package/package.json +10 -10
  3. package/src/browser/chat-input-widget.tsx +77 -14
  4. package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +4 -3
  5. package/src/browser/style/index.css +31 -0
  6. package/lib/browser/ai-chat-ui-contribution.d.ts +0 -66
  7. package/lib/browser/ai-chat-ui-contribution.d.ts.map +0 -1
  8. package/lib/browser/ai-chat-ui-contribution.js +0 -587
  9. package/lib/browser/ai-chat-ui-contribution.js.map +0 -1
  10. package/lib/browser/ai-chat-ui-frontend-module.d.ts +0 -5
  11. package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +0 -1
  12. package/lib/browser/ai-chat-ui-frontend-module.js +0 -153
  13. package/lib/browser/ai-chat-ui-frontend-module.js.map +0 -1
  14. package/lib/browser/change-set-actions/change-set-accept-action.d.ts +0 -10
  15. package/lib/browser/change-set-actions/change-set-accept-action.d.ts.map +0 -1
  16. package/lib/browser/change-set-actions/change-set-accept-action.js +0 -47
  17. package/lib/browser/change-set-actions/change-set-accept-action.js.map +0 -1
  18. package/lib/browser/change-set-actions/change-set-action-service.d.ts +0 -31
  19. package/lib/browser/change-set-actions/change-set-action-service.d.ts.map +0 -1
  20. package/lib/browser/change-set-actions/change-set-action-service.js +0 -57
  21. package/lib/browser/change-set-actions/change-set-action-service.js.map +0 -1
  22. package/lib/browser/chat-input-agent-suggestions.d.ts +0 -11
  23. package/lib/browser/chat-input-agent-suggestions.d.ts.map +0 -1
  24. package/lib/browser/chat-input-agent-suggestions.js +0 -76
  25. package/lib/browser/chat-input-agent-suggestions.js.map +0 -1
  26. package/lib/browser/chat-input-history-contribution.d.ts +0 -17
  27. package/lib/browser/chat-input-history-contribution.d.ts.map +0 -1
  28. package/lib/browser/chat-input-history-contribution.js +0 -158
  29. package/lib/browser/chat-input-history-contribution.js.map +0 -1
  30. package/lib/browser/chat-input-history.d.ts +0 -32
  31. package/lib/browser/chat-input-history.d.ts.map +0 -1
  32. package/lib/browser/chat-input-history.js +0 -125
  33. package/lib/browser/chat-input-history.js.map +0 -1
  34. package/lib/browser/chat-input-mode-contribution.d.ts +0 -12
  35. package/lib/browser/chat-input-mode-contribution.d.ts.map +0 -1
  36. package/lib/browser/chat-input-mode-contribution.js +0 -77
  37. package/lib/browser/chat-input-mode-contribution.js.map +0 -1
  38. package/lib/browser/chat-input-widget.d.ts +0 -115
  39. package/lib/browser/chat-input-widget.d.ts.map +0 -1
  40. package/lib/browser/chat-input-widget.js +0 -973
  41. package/lib/browser/chat-input-widget.js.map +0 -1
  42. package/lib/browser/chat-node-toolbar-action-contribution.d.ts +0 -56
  43. package/lib/browser/chat-node-toolbar-action-contribution.d.ts.map +0 -1
  44. package/lib/browser/chat-node-toolbar-action-contribution.js +0 -92
  45. package/lib/browser/chat-node-toolbar-action-contribution.js.map +0 -1
  46. package/lib/browser/chat-progress-message.d.ts +0 -7
  47. package/lib/browser/chat-progress-message.d.ts.map +0 -1
  48. package/lib/browser/chat-progress-message.js +0 -33
  49. package/lib/browser/chat-progress-message.js.map +0 -1
  50. package/lib/browser/chat-response-part-renderer.d.ts +0 -10
  51. package/lib/browser/chat-response-part-renderer.d.ts.map +0 -1
  52. package/lib/browser/chat-response-part-renderer.js +0 -20
  53. package/lib/browser/chat-response-part-renderer.js.map +0 -1
  54. package/lib/browser/chat-response-renderer/ai-selection-resolver.d.ts +0 -23
  55. package/lib/browser/chat-response-renderer/ai-selection-resolver.d.ts.map +0 -1
  56. package/lib/browser/chat-response-renderer/ai-selection-resolver.js +0 -148
  57. package/lib/browser/chat-response-renderer/ai-selection-resolver.js.map +0 -1
  58. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts +0 -73
  59. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts.map +0 -1
  60. package/lib/browser/chat-response-renderer/code-part-renderer.js +0 -227
  61. package/lib/browser/chat-response-renderer/code-part-renderer.js.map +0 -1
  62. package/lib/browser/chat-response-renderer/command-part-renderer.d.ts +0 -12
  63. package/lib/browser/chat-response-renderer/command-part-renderer.d.ts.map +0 -1
  64. package/lib/browser/chat-response-renderer/command-part-renderer.js +0 -67
  65. package/lib/browser/chat-response-renderer/command-part-renderer.js.map +0 -1
  66. package/lib/browser/chat-response-renderer/delegation-response-renderer.d.ts +0 -14
  67. package/lib/browser/chat-response-renderer/delegation-response-renderer.d.ts.map +0 -1
  68. package/lib/browser/chat-response-renderer/delegation-response-renderer.js +0 -144
  69. package/lib/browser/chat-response-renderer/delegation-response-renderer.js.map +0 -1
  70. package/lib/browser/chat-response-renderer/error-part-renderer.d.ts +0 -9
  71. package/lib/browser/chat-response-renderer/error-part-renderer.d.ts.map +0 -1
  72. package/lib/browser/chat-response-renderer/error-part-renderer.js +0 -40
  73. package/lib/browser/chat-response-renderer/error-part-renderer.js.map +0 -1
  74. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.d.ts +0 -12
  75. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.d.ts.map +0 -1
  76. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.js +0 -54
  77. package/lib/browser/chat-response-renderer/horizontal-layout-part-renderer.js.map +0 -1
  78. package/lib/browser/chat-response-renderer/index.d.ts +0 -13
  79. package/lib/browser/chat-response-renderer/index.d.ts.map +0 -1
  80. package/lib/browser/chat-response-renderer/index.js +0 -31
  81. package/lib/browser/chat-response-renderer/index.js.map +0 -1
  82. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +0 -36
  83. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +0 -1
  84. package/lib/browser/chat-response-renderer/markdown-part-renderer.js +0 -128
  85. package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +0 -1
  86. package/lib/browser/chat-response-renderer/progress-part-renderer.d.ts +0 -9
  87. package/lib/browser/chat-response-renderer/progress-part-renderer.d.ts.map +0 -1
  88. package/lib/browser/chat-response-renderer/progress-part-renderer.js +0 -39
  89. package/lib/browser/chat-response-renderer/progress-part-renderer.js.map +0 -1
  90. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts +0 -10
  91. package/lib/browser/chat-response-renderer/question-part-renderer.d.ts.map +0 -1
  92. package/lib/browser/chat-response-renderer/question-part-renderer.js +0 -49
  93. package/lib/browser/chat-response-renderer/question-part-renderer.js.map +0 -1
  94. package/lib/browser/chat-response-renderer/text-part-renderer.d.ts +0 -9
  95. package/lib/browser/chat-response-renderer/text-part-renderer.d.ts.map +0 -1
  96. package/lib/browser/chat-response-renderer/text-part-renderer.js +0 -43
  97. package/lib/browser/chat-response-renderer/text-part-renderer.js.map +0 -1
  98. package/lib/browser/chat-response-renderer/text-part-renderer.spec.d.ts +0 -2
  99. package/lib/browser/chat-response-renderer/text-part-renderer.spec.d.ts.map +0 -1
  100. package/lib/browser/chat-response-renderer/text-part-renderer.spec.js +0 -46
  101. package/lib/browser/chat-response-renderer/text-part-renderer.spec.js.map +0 -1
  102. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts +0 -9
  103. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts.map +0 -1
  104. package/lib/browser/chat-response-renderer/thinking-part-renderer.js +0 -42
  105. package/lib/browser/chat-response-renderer/thinking-part-renderer.js.map +0 -1
  106. package/lib/browser/chat-response-renderer/tool-confirmation.d.ts +0 -17
  107. package/lib/browser/chat-response-renderer/tool-confirmation.d.ts.map +0 -1
  108. package/lib/browser/chat-response-renderer/tool-confirmation.js +0 -122
  109. package/lib/browser/chat-response-renderer/tool-confirmation.js.map +0 -1
  110. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts +0 -20
  111. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +0 -1
  112. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +0 -223
  113. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +0 -1
  114. package/lib/browser/chat-response-renderer/unknown-part-renderer.d.ts +0 -9
  115. package/lib/browser/chat-response-renderer/unknown-part-renderer.d.ts.map +0 -1
  116. package/lib/browser/chat-response-renderer/unknown-part-renderer.js +0 -42
  117. package/lib/browser/chat-response-renderer/unknown-part-renderer.js.map +0 -1
  118. package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts +0 -4
  119. package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts.map +0 -1
  120. package/lib/browser/chat-tree-view/chat-view-tree-container.js +0 -33
  121. package/lib/browser/chat-tree-view/chat-view-tree-container.js.map +0 -1
  122. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.d.ts +0 -38
  123. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.d.ts.map +0 -1
  124. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.js +0 -88
  125. package/lib/browser/chat-tree-view/chat-view-tree-input-widget.js.map +0 -1
  126. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +0 -120
  127. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +0 -1
  128. package/lib/browser/chat-tree-view/chat-view-tree-widget.js +0 -654
  129. package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +0 -1
  130. package/lib/browser/chat-tree-view/index.d.ts +0 -3
  131. package/lib/browser/chat-tree-view/index.d.ts.map +0 -1
  132. package/lib/browser/chat-tree-view/index.js +0 -21
  133. package/lib/browser/chat-tree-view/index.js.map +0 -1
  134. package/lib/browser/chat-tree-view/sub-chat-widget.d.ts +0 -22
  135. package/lib/browser/chat-tree-view/sub-chat-widget.d.ts.map +0 -1
  136. package/lib/browser/chat-tree-view/sub-chat-widget.js +0 -92
  137. package/lib/browser/chat-tree-view/sub-chat-widget.js.map +0 -1
  138. package/lib/browser/chat-view-commands.d.ts +0 -15
  139. package/lib/browser/chat-view-commands.d.ts.map +0 -1
  140. package/lib/browser/chat-view-commands.js +0 -76
  141. package/lib/browser/chat-view-commands.js.map +0 -1
  142. package/lib/browser/chat-view-contribution.d.ts +0 -21
  143. package/lib/browser/chat-view-contribution.d.ts.map +0 -1
  144. package/lib/browser/chat-view-contribution.js +0 -183
  145. package/lib/browser/chat-view-contribution.js.map +0 -1
  146. package/lib/browser/chat-view-language-contribution.d.ts +0 -41
  147. package/lib/browser/chat-view-language-contribution.d.ts.map +0 -1
  148. package/lib/browser/chat-view-language-contribution.js +0 -269
  149. package/lib/browser/chat-view-language-contribution.js.map +0 -1
  150. package/lib/browser/chat-view-widget-toolbar-contribution.d.ts +0 -20
  151. package/lib/browser/chat-view-widget-toolbar-contribution.d.ts.map +0 -1
  152. package/lib/browser/chat-view-widget-toolbar-contribution.js +0 -115
  153. package/lib/browser/chat-view-widget-toolbar-contribution.js.map +0 -1
  154. package/lib/browser/chat-view-widget.d.ts +0 -60
  155. package/lib/browser/chat-view-widget.d.ts.map +0 -1
  156. package/lib/browser/chat-view-widget.js +0 -243
  157. package/lib/browser/chat-view-widget.js.map +0 -1
  158. package/lib/browser/context-variable-picker.d.ts +0 -9
  159. package/lib/browser/context-variable-picker.d.ts.map +0 -1
  160. package/lib/browser/context-variable-picker.js +0 -86
  161. package/lib/browser/context-variable-picker.js.map +0 -1
  162. package/lib/browser/session-settings-dialog.d.ts +0 -35
  163. package/lib/browser/session-settings-dialog.d.ts.map +0 -1
  164. package/lib/browser/session-settings-dialog.js +0 -118
  165. package/lib/browser/session-settings-dialog.js.map +0 -1
@@ -1,269 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ChatViewLanguageContribution = exports.CHAT_VIEW_LANGUAGE_EXTENSION = exports.SETTINGS_LANGUAGE_ID = exports.CHAT_VIEW_LANGUAGE_ID = 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 common_1 = require("@theia/ai-core/lib/common");
22
- const prompt_text_1 = require("@theia/ai-core/lib/common/prompt-text");
23
- const prompt_service_1 = require("@theia/ai-core/lib/common/prompt-service");
24
- const tool_invocation_registry_1 = require("@theia/ai-core/lib/common/tool-invocation-registry");
25
- const core_1 = require("@theia/core");
26
- const context_key_service_1 = require("@theia/core/lib/browser/context-key-service");
27
- const inversify_1 = require("@theia/core/shared/inversify");
28
- const monaco = require("@theia/monaco-editor-core");
29
- const ai_chat_frontend_contribution_1 = require("@theia/ai-chat/lib/browser/ai-chat-frontend-contribution");
30
- exports.CHAT_VIEW_LANGUAGE_ID = 'theia-ai-chat-view-language';
31
- exports.SETTINGS_LANGUAGE_ID = 'theia-ai-chat-settings-language';
32
- exports.CHAT_VIEW_LANGUAGE_EXTENSION = 'aichatviewlanguage';
33
- const VARIABLE_RESOLUTION_CONTEXT = { context: 'chat-input-autocomplete' };
34
- const VARIABLE_ARGUMENT_PICKER_COMMAND = 'trigger-variable-argument-picker';
35
- let ChatViewLanguageContribution = class ChatViewLanguageContribution {
36
- onStart(_app) {
37
- monaco.languages.register({ id: exports.CHAT_VIEW_LANGUAGE_ID, extensions: [exports.CHAT_VIEW_LANGUAGE_EXTENSION] });
38
- monaco.languages.register({ id: exports.SETTINGS_LANGUAGE_ID, extensions: ['json'], filenames: ['editor'] });
39
- this.registerCompletionProviders();
40
- monaco.editor.registerCommand(VARIABLE_ARGUMENT_PICKER_COMMAND, this.triggerVariableArgumentPicker.bind(this));
41
- }
42
- registerCompletionProviders() {
43
- this.registerStandardCompletionProvider({
44
- triggerCharacter: prompt_text_1.PromptText.AGENT_CHAR,
45
- getItems: () => this.agentService.getAgents(),
46
- kind: monaco.languages.CompletionItemKind.Value,
47
- getId: agent => `${agent.id} `,
48
- getName: agent => agent.name,
49
- getDescription: agent => agent.description
50
- });
51
- this.registerStandardCompletionProvider({
52
- triggerCharacter: prompt_text_1.PromptText.VARIABLE_CHAR,
53
- getItems: () => this.variableService.getVariables(),
54
- kind: monaco.languages.CompletionItemKind.Variable,
55
- getId: variable => { var _a; return ((_a = variable.args) === null || _a === void 0 ? void 0 : _a.some(arg => !arg.isOptional)) ? variable.name + prompt_text_1.PromptText.VARIABLE_SEPARATOR_CHAR : `${variable.name} `; },
56
- getName: variable => variable.name,
57
- getDescription: variable => variable.description,
58
- command: {
59
- title: core_1.nls.localize('theia/ai/chat-ui/selectVariableArguments', 'Select variable arguments'),
60
- id: VARIABLE_ARGUMENT_PICKER_COMMAND,
61
- }
62
- });
63
- this.registerStandardCompletionProvider({
64
- triggerCharacter: prompt_text_1.PromptText.FUNCTION_CHAR,
65
- getItems: () => this.toolInvocationRegistry.getAllFunctions(),
66
- kind: monaco.languages.CompletionItemKind.Function,
67
- getId: tool => `${tool.id} `,
68
- getName: tool => tool.name,
69
- getDescription: tool => { var _a; return (_a = tool.description) !== null && _a !== void 0 ? _a : ''; }
70
- });
71
- // Register the variable argument completion provider (special case)
72
- monaco.languages.registerCompletionItemProvider(exports.CHAT_VIEW_LANGUAGE_ID, {
73
- triggerCharacters: [prompt_text_1.PromptText.VARIABLE_CHAR, prompt_text_1.PromptText.VARIABLE_SEPARATOR_CHAR],
74
- provideCompletionItems: (model, position, _context, _token) => this.provideVariableWithArgCompletions(model, position),
75
- });
76
- // Register command completion provider
77
- monaco.languages.registerCompletionItemProvider(exports.CHAT_VIEW_LANGUAGE_ID, {
78
- triggerCharacters: [prompt_text_1.PromptText.COMMAND_CHAR],
79
- provideCompletionItems: (model, position, _context, _token) => this.provideCommandCompletions(model, position),
80
- });
81
- }
82
- registerStandardCompletionProvider(source) {
83
- monaco.languages.registerCompletionItemProvider(exports.CHAT_VIEW_LANGUAGE_ID, {
84
- triggerCharacters: [source.triggerCharacter],
85
- provideCompletionItems: (model, position, _context, _token) => this.provideCompletions(model, position, source),
86
- });
87
- }
88
- getCompletionRange(model, position, triggerCharacter) {
89
- const wordInfo = model.getWordUntilPosition(position);
90
- const lineContent = model.getLineContent(position.lineNumber);
91
- // one to the left, and -1 for 0-based index
92
- const characterBeforeCurrentWord = lineContent[wordInfo.startColumn - 1 - 1];
93
- if (characterBeforeCurrentWord !== triggerCharacter) {
94
- return undefined;
95
- }
96
- // we are not at the beginning of the line
97
- if (wordInfo.startColumn > 2) {
98
- const charBeforeTrigger = model.getValueInRange({
99
- startLineNumber: position.lineNumber,
100
- startColumn: wordInfo.startColumn - 2,
101
- endLineNumber: position.lineNumber,
102
- endColumn: wordInfo.startColumn - 1
103
- });
104
- // If the character before the trigger is not whitespace, don't provide completions
105
- if (!/\s/.test(charBeforeTrigger)) {
106
- return undefined;
107
- }
108
- }
109
- return new monaco.Range(position.lineNumber, wordInfo.startColumn, position.lineNumber, position.column);
110
- }
111
- provideCompletions(model, position, source) {
112
- const completionRange = this.getCompletionRange(model, position, source.triggerCharacter);
113
- if (completionRange === undefined) {
114
- return { suggestions: [] };
115
- }
116
- const items = source.getItems();
117
- const suggestions = items.map(item => ({
118
- insertText: source.getId(item),
119
- kind: source.kind,
120
- label: source.getName(item),
121
- range: completionRange,
122
- detail: source.getDescription(item),
123
- command: source.command
124
- }));
125
- return { suggestions };
126
- }
127
- async provideVariableWithArgCompletions(model, position) {
128
- // Get the text of the current line up to the cursor position
129
- const textUntilPosition = model.getValueInRange({
130
- startLineNumber: position.lineNumber,
131
- startColumn: 1,
132
- endLineNumber: position.lineNumber,
133
- endColumn: position.column,
134
- });
135
- // Regex that captures the variable name in contexts like "#varname" or "#var-name:args"
136
- // Matches only when # is at the beginning of the string or after whitespace
137
- const variableRegex = /(?:^|\s)#([\w-]*)/;
138
- const match = textUntilPosition.match(variableRegex);
139
- if (!match) {
140
- return { suggestions: [] };
141
- }
142
- const currentVariableName = match[1];
143
- const hasColonSeparator = textUntilPosition.includes(`${currentVariableName}:`);
144
- const variables = this.variableService.getVariables();
145
- const suggestions = [];
146
- for (const variable of variables) {
147
- // If we have a variable:arg pattern, only process the matching variable
148
- if (hasColonSeparator && variable.name !== currentVariableName) {
149
- continue;
150
- }
151
- const provider = await this.variableService.getArgumentCompletionProvider(variable.name);
152
- if (provider) {
153
- const items = await provider(model, position);
154
- if (items) {
155
- suggestions.push(...items.map(item => ({
156
- command: {
157
- title: ai_chat_frontend_contribution_1.VARIABLE_ADD_CONTEXT_COMMAND.label,
158
- id: ai_chat_frontend_contribution_1.VARIABLE_ADD_CONTEXT_COMMAND.id,
159
- arguments: [variable.name, item.insertText]
160
- },
161
- ...item,
162
- })));
163
- }
164
- }
165
- }
166
- return { suggestions };
167
- }
168
- async triggerVariableArgumentPicker() {
169
- var _a;
170
- const inputEditor = monaco.editor.getEditors().find(editor => editor.hasTextFocus());
171
- if (!inputEditor) {
172
- return;
173
- }
174
- const model = inputEditor.getModel();
175
- const position = inputEditor.getPosition();
176
- if (!model || !position) {
177
- return;
178
- }
179
- // // Get the word at cursor
180
- const wordInfo = model.getWordUntilPosition(position);
181
- // account for the variable separator character if present
182
- let endOfWordPosition = position.column;
183
- if (wordInfo.word === '' && this.getCharacterBeforePosition(model, position) === prompt_text_1.PromptText.VARIABLE_SEPARATOR_CHAR) {
184
- endOfWordPosition = position.column - 1;
185
- }
186
- else {
187
- return;
188
- }
189
- const variableName = (_a = model.getWordAtPosition({ ...position, column: endOfWordPosition })) === null || _a === void 0 ? void 0 : _a.word;
190
- if (!variableName) {
191
- return;
192
- }
193
- const provider = await this.variableService.getArgumentPicker(variableName, VARIABLE_RESOLUTION_CONTEXT);
194
- if (!provider) {
195
- return;
196
- }
197
- const arg = await provider(VARIABLE_RESOLUTION_CONTEXT);
198
- if (!arg) {
199
- return;
200
- }
201
- inputEditor.executeEdits('variable-argument-picker', [{
202
- range: new monaco.Range(position.lineNumber, position.column, position.lineNumber, position.column),
203
- text: arg
204
- }]);
205
- await this.chatFrontendContribution.addContextVariable(variableName, arg);
206
- }
207
- getCharacterBeforePosition(model, position) {
208
- return model.getLineContent(position.lineNumber)[position.column - 1 - 1];
209
- }
210
- provideCommandCompletions(model, position) {
211
- const range = this.getCompletionRange(model, position, prompt_text_1.PromptText.COMMAND_CHAR);
212
- if (range === undefined) {
213
- return { suggestions: [] };
214
- }
215
- let currentAgentId;
216
- const allAgents = this.agentService.getAgents();
217
- for (const agent of allAgents) {
218
- if (this.contextKeyService.match(`chatInputReceivingAgent == '${agent.id}'`)) {
219
- currentAgentId = agent.id;
220
- break;
221
- }
222
- }
223
- const commands = this.promptService.getCommands(currentAgentId);
224
- const suggestions = commands.map(cmd => {
225
- const base = cmd;
226
- const label = base.commandName || base.id;
227
- const description = base.commandDescription || '';
228
- const argHint = base.commandArgumentHint || '';
229
- const detail = argHint ? `${description} — ${argHint}` : description;
230
- return {
231
- insertText: `${label} `,
232
- kind: monaco.languages.CompletionItemKind.Function,
233
- label,
234
- range,
235
- detail
236
- };
237
- });
238
- return { suggestions };
239
- }
240
- };
241
- exports.ChatViewLanguageContribution = ChatViewLanguageContribution;
242
- tslib_1.__decorate([
243
- (0, inversify_1.inject)(ai_chat_1.ChatAgentService),
244
- tslib_1.__metadata("design:type", Object)
245
- ], ChatViewLanguageContribution.prototype, "agentService", void 0);
246
- tslib_1.__decorate([
247
- (0, inversify_1.inject)(common_1.AIVariableService),
248
- tslib_1.__metadata("design:type", Object)
249
- ], ChatViewLanguageContribution.prototype, "variableService", void 0);
250
- tslib_1.__decorate([
251
- (0, inversify_1.inject)(tool_invocation_registry_1.ToolInvocationRegistry),
252
- tslib_1.__metadata("design:type", Object)
253
- ], ChatViewLanguageContribution.prototype, "toolInvocationRegistry", void 0);
254
- tslib_1.__decorate([
255
- (0, inversify_1.inject)(ai_chat_frontend_contribution_1.AIChatFrontendContribution),
256
- tslib_1.__metadata("design:type", ai_chat_frontend_contribution_1.AIChatFrontendContribution)
257
- ], ChatViewLanguageContribution.prototype, "chatFrontendContribution", void 0);
258
- tslib_1.__decorate([
259
- (0, inversify_1.inject)(prompt_service_1.PromptService),
260
- tslib_1.__metadata("design:type", Object)
261
- ], ChatViewLanguageContribution.prototype, "promptService", void 0);
262
- tslib_1.__decorate([
263
- (0, inversify_1.inject)(context_key_service_1.ContextKeyService),
264
- tslib_1.__metadata("design:type", Object)
265
- ], ChatViewLanguageContribution.prototype, "contextKeyService", void 0);
266
- exports.ChatViewLanguageContribution = ChatViewLanguageContribution = tslib_1.__decorate([
267
- (0, inversify_1.injectable)()
268
- ], ChatViewLanguageContribution);
269
- //# sourceMappingURL=chat-view-language-contribution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-view-language-contribution.js","sourceRoot":"","sources":["../../src/browser/chat-view-language-contribution.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;AAChF,4CAAkD;AAClD,sDAA8D;AAC9D,uEAAmE;AACnE,6EAA6F;AAC7F,iGAA4F;AAC5F,sCAAgD;AAEhD,qFAAgF;AAChF,4DAAkE;AAClE,oDAAoD;AAEpD,4GAAoI;AAEvH,QAAA,qBAAqB,GAAG,6BAA6B,CAAC;AACtD,QAAA,oBAAoB,GAAG,iCAAiC,CAAC;AACzD,QAAA,4BAA4B,GAAG,oBAAoB,CAAC;AAEjE,MAAM,2BAA2B,GAAG,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAC3E,MAAM,gCAAgC,GAAG,kCAAkC,CAAC;AAarE,IAAM,4BAA4B,GAAlC,MAAM,4BAA4B;IAoBrC,OAAO,CAAC,IAAyB;QAC7B,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,6BAAqB,EAAE,UAAU,EAAE,CAAC,oCAA4B,CAAC,EAAE,CAAC,CAAC;QACrG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,4BAAoB,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAErG,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,gCAAgC,EAAE,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnH,CAAC;IAES,2BAA2B;QACjC,IAAI,CAAC,kCAAkC,CAAC;YACpC,gBAAgB,EAAE,wBAAU,CAAC,UAAU;YACvC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE;YAC7C,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK;YAC/C,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG;YAC9B,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI;YAC5B,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW;SAC7C,CAAC,CAAC;QAEH,IAAI,CAAC,kCAAkC,CAAC;YACpC,gBAAgB,EAAE,wBAAU,CAAC,aAAa;YAC1C,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE;YACnD,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,QAAQ;YAClD,KAAK,EAAE,QAAQ,CAAC,EAAE,WAAC,OAAA,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,wBAAU,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAA,EAAA;YACzI,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI;YAClC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW;YAChD,OAAO,EAAE;gBACL,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,2BAA2B,CAAC;gBAC5F,EAAE,EAAE,gCAAgC;aACvC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,kCAAkC,CAAC;YACpC,gBAAgB,EAAE,wBAAU,CAAC,aAAa;YAC1C,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,eAAe,EAAE;YAC7D,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,QAAQ;YAClD,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG;YAC5B,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI;YAC1B,cAAc,EAAE,IAAI,CAAC,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,EAAE,CAAA,EAAA;SACjD,CAAC,CAAC;QAEH,oEAAoE;QACpE,MAAM,CAAC,SAAS,CAAC,8BAA8B,CAAC,6BAAqB,EAAE;YACnE,iBAAiB,EAAE,CAAC,wBAAU,CAAC,aAAa,EAAE,wBAAU,CAAC,uBAAuB,CAAC;YACjF,sBAAsB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAmD,EAAE,CAC3G,IAAI,CAAC,iCAAiC,CAAC,KAAK,EAAE,QAAQ,CAAC;SAC9D,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,CAAC,SAAS,CAAC,8BAA8B,CAAC,6BAAqB,EAAE;YACnE,iBAAiB,EAAE,CAAC,wBAAU,CAAC,YAAY,CAAC;YAC5C,sBAAsB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAmD,EAAE,CAC3G,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC;SACtD,CAAC,CAAC;IACP,CAAC;IAES,kCAAkC,CAAI,MAA2B;QACvE,MAAM,CAAC,SAAS,CAAC,8BAA8B,CAAC,6BAAqB,EAAE;YACnE,iBAAiB,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAC5C,sBAAsB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAmD,EAAE,CAC3G,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;SACvD,CAAC,CAAC;IACP,CAAC;IAED,kBAAkB,CAAC,KAA+B,EAAE,QAAyB,EAAE,gBAAwB;QACnG,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC9D,4CAA4C;QAC5C,MAAM,0BAA0B,GAAG,WAAW,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAE7E,IAAI,0BAA0B,KAAK,gBAAgB,EAAE,CAAC;YAClD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,0CAA0C;QAC1C,IAAI,QAAQ,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,iBAAiB,GAAG,KAAK,CAAC,eAAe,CAAC;gBAC5C,eAAe,EAAE,QAAQ,CAAC,UAAU;gBACpC,WAAW,EAAE,QAAQ,CAAC,WAAW,GAAG,CAAC;gBACrC,aAAa,EAAE,QAAQ,CAAC,UAAU;gBAClC,SAAS,EAAE,QAAQ,CAAC,WAAW,GAAG,CAAC;aACtC,CAAC,CAAC;YACH,mFAAmF;YACnF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAChC,OAAO,SAAS,CAAC;YACrB,CAAC;QACL,CAAC;QAED,OAAO,IAAI,MAAM,CAAC,KAAK,CACnB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,WAAW,EACpB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,MAAM,CAClB,CAAC;IACN,CAAC;IAES,kBAAkB,CACxB,KAA+B,EAC/B,QAAyB,EACzB,MAA2B;QAE3B,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC1F,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;YAC9B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAC3B,KAAK,EAAE,eAAe;YACtB,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,OAAO;SAC1B,CAAC,CAAC,CAAC;QAEJ,OAAO,EAAE,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,iCAAiC,CAAC,KAA+B,EAAE,QAAyB;QAC9F,6DAA6D;QAC7D,MAAM,iBAAiB,GAAG,KAAK,CAAC,eAAe,CAAC;YAC5C,eAAe,EAAE,QAAQ,CAAC,UAAU;YACpC,WAAW,EAAE,CAAC;YACd,aAAa,EAAE,QAAQ,CAAC,UAAU;YAClC,SAAS,EAAE,QAAQ,CAAC,MAAM;SAC7B,CAAC,CAAC;QAEH,wFAAwF;QACxF,4EAA4E;QAC5E,MAAM,aAAa,GAAG,mBAAmB,CAAC;QAC1C,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,mBAAmB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,mBAAmB,GAAG,CAAC,CAAC;QAEhF,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;QACtD,MAAM,WAAW,GAAsC,EAAE,CAAC;QAE1D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,wEAAwE;YACxE,IAAI,iBAAiB,IAAI,QAAQ,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBAC7D,SAAS;YACb,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzF,IAAI,QAAQ,EAAE,CAAC;gBACX,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC9C,IAAI,KAAK,EAAE,CAAC;oBACR,WAAW,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACnC,OAAO,EAAE;4BACL,KAAK,EAAE,4DAA4B,CAAC,KAAM;4BAC1C,EAAE,EAAE,4DAA4B,CAAC,EAAE;4BACnC,SAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC;yBAC9C;wBACD,GAAG,IAAI;qBACV,CAAC,CAAC,CAAC,CAAC;gBACT,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,EAAE,WAAW,EAAE,CAAC;IAC3B,CAAC;IAES,KAAK,CAAC,6BAA6B;;QACzC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,OAAO;QACX,CAAC;QAED,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QAED,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAEtD,0DAA0D;QAC1D,IAAI,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC;QACxC,IAAI,QAAQ,CAAC,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,wBAAU,CAAC,uBAAuB,EAAE,CAAC;YAClH,iBAAiB,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC5C,CAAC;aAAM,CAAC;YACJ,OAAO;QACX,CAAC;QAED,MAAM,YAAY,GAAG,MAAA,KAAK,CAAC,iBAAiB,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,0CAAE,IAAI,CAAC;QAC/F,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,YAAY,EAAE,2BAA2B,CAAC,CAAC;QACzG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,2BAA2B,CAAC,CAAC;QACxD,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO;QACX,CAAC;QAED,WAAW,CAAC,YAAY,CAAC,0BAA0B,EAAE,CAAC;gBAClD,KAAK,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC;gBACnG,IAAI,EAAE,GAAG;aACZ,CAAC,CAAC,CAAC;QAEJ,MAAM,IAAI,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IAC9E,CAAC;IAES,0BAA0B,CAAC,KAA+B,EAAE,QAAyB;QAC3F,OAAO,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAES,yBAAyB,CAAC,KAA+B,EAAE,QAAyB;QAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,EAAE,wBAAU,CAAC,YAAY,CAAC,CAAC;QAChF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QAC/B,CAAC;QAED,IAAI,cAAkC,CAAC;QACvC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,+BAA+B,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBAC3E,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC;gBAC1B,MAAM;YACV,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;QAEhE,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACnC,MAAM,IAAI,GAAG,GAAyB,CAAC;YACvC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,IAAI,EAAE,CAAC;YAE/C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,WAAW,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;YAErE,OAAO;gBACH,UAAU,EAAE,GAAG,KAAK,GAAG;gBACvB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,QAAQ;gBAClD,KAAK;gBACL,KAAK;gBACL,MAAM;aACT,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,WAAW,EAAE,CAAC;IAC3B,CAAC;CACJ,CAAA;AAlRY,oEAA4B;AAGlB;IADlB,IAAA,kBAAM,EAAC,0BAAgB,CAAC;;kEACyB;AAG/B;IADlB,IAAA,kBAAM,EAAC,0BAAiB,CAAC;;qEAC4B;AAGnC;IADlB,IAAA,kBAAM,EAAC,iDAAsB,CAAC;;4EACmC;AAG/C;IADlB,IAAA,kBAAM,EAAC,0DAA0B,CAAC;sCACU,0DAA0B;8EAAC;AAGrD;IADlB,IAAA,kBAAM,EAAC,8BAAa,CAAC;;mEAC0B;AAG7B;IADlB,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;uEAC8B;uCAlB/C,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CAkRxC"}
@@ -1,20 +0,0 @@
1
- import { TabBarToolbarContribution, TabBarToolbarRegistry } from '@theia/core/lib/browser/shell/tab-bar-toolbar';
2
- import { AIChatContribution } from './ai-chat-ui-contribution';
3
- import { Emitter, InMemoryResources } from '@theia/core';
4
- import { CommandRegistry } from '@theia/core/lib/common/command';
5
- import { MonacoEditorProvider } from '@theia/monaco/lib/browser/monaco-editor-provider';
6
- import { AIActivationService } from '@theia/ai-core/lib/browser';
7
- export declare class ChatViewWidgetToolbarContribution implements TabBarToolbarContribution {
8
- protected readonly chatContribution: AIChatContribution;
9
- protected readonly commandRegistry: CommandRegistry;
10
- protected readonly editorProvider: MonacoEditorProvider;
11
- protected readonly resources: InMemoryResources;
12
- protected readonly activationService: AIActivationService;
13
- protected readonly onChatWidgetStateChangedEmitter: Emitter<void>;
14
- protected readonly onChatWidgetStateChanged: import("@theia/core").Event<void>;
15
- private readonly sessionSettingsURI;
16
- protected init(): void;
17
- registerToolbarItems(registry: TabBarToolbarRegistry): void;
18
- protected openJsonDataDialog(): Promise<void>;
19
- }
20
- //# sourceMappingURL=chat-view-widget-toolbar-contribution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-view-widget-toolbar-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/chat-view-widget-toolbar-contribution.tsx"],"names":[],"mappings":"AAiBA,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAY,MAAM,aAAa,CAAC;AAEnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AAExF,OAAO,EAAE,mBAAmB,EAAyB,MAAM,4BAA4B,CAAC;AAExF,qBACa,iCAAkC,YAAW,yBAAyB;IAE/E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;IAE1D,SAAS,CAAC,QAAQ,CAAC,+BAA+B,gBAAuB;IACzE,SAAS,CAAC,QAAQ,CAAC,wBAAwB,oCAA8C;IAEzF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAuC;IAG1E,SAAS,CAAC,IAAI,IAAI,IAAI;IActB,oBAAoB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;cA0B3C,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;CAgBtD"}
@@ -1,115 +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
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ChatViewWidgetToolbarContribution = void 0;
19
- const tslib_1 = require("tslib");
20
- const inversify_1 = require("@theia/core/shared/inversify");
21
- const ai_chat_ui_contribution_1 = require("./ai-chat-ui-contribution");
22
- const core_1 = require("@theia/core");
23
- const chat_view_commands_1 = require("./chat-view-commands");
24
- const command_1 = require("@theia/core/lib/common/command");
25
- const session_settings_dialog_1 = require("./session-settings-dialog");
26
- const monaco_editor_provider_1 = require("@theia/monaco/lib/browser/monaco-editor-provider");
27
- const chat_view_widget_1 = require("./chat-view-widget");
28
- const browser_1 = require("@theia/ai-core/lib/browser");
29
- let ChatViewWidgetToolbarContribution = class ChatViewWidgetToolbarContribution {
30
- constructor() {
31
- this.onChatWidgetStateChangedEmitter = new core_1.Emitter();
32
- this.onChatWidgetStateChanged = this.onChatWidgetStateChangedEmitter.event;
33
- this.sessionSettingsURI = new core_1.URI('chat-view:/settings.json');
34
- }
35
- init() {
36
- this.resources.add(this.sessionSettingsURI, '{}');
37
- this.chatContribution.widget.then(widget => {
38
- widget.onStateChanged(() => this.onChatWidgetStateChangedEmitter.fire());
39
- });
40
- this.commandRegistry.registerCommand(chat_view_commands_1.ChatCommands.EDIT_SESSION_SETTINGS, {
41
- execute: () => this.openJsonDataDialog(),
42
- isEnabled: widget => this.activationService.isActive && widget instanceof chat_view_widget_1.ChatViewWidget,
43
- isVisible: widget => this.activationService.isActive && widget instanceof chat_view_widget_1.ChatViewWidget
44
- });
45
- }
46
- registerToolbarItems(registry) {
47
- registry.registerItem({
48
- id: chat_view_commands_1.ChatCommands.SCROLL_LOCK_WIDGET.id,
49
- command: chat_view_commands_1.ChatCommands.SCROLL_LOCK_WIDGET.id,
50
- tooltip: core_1.nls.localizeByDefault('Turn Auto Scrolling Off'),
51
- onDidChange: this.onChatWidgetStateChanged,
52
- priority: 2,
53
- when: browser_1.ENABLE_AI_CONTEXT_KEY
54
- });
55
- registry.registerItem({
56
- id: chat_view_commands_1.ChatCommands.SCROLL_UNLOCK_WIDGET.id,
57
- command: chat_view_commands_1.ChatCommands.SCROLL_UNLOCK_WIDGET.id,
58
- tooltip: core_1.nls.localizeByDefault('Turn Auto Scrolling On'),
59
- onDidChange: this.onChatWidgetStateChanged,
60
- priority: 2,
61
- when: browser_1.ENABLE_AI_CONTEXT_KEY
62
- });
63
- registry.registerItem({
64
- id: chat_view_commands_1.ChatCommands.EDIT_SESSION_SETTINGS.id,
65
- command: chat_view_commands_1.ChatCommands.EDIT_SESSION_SETTINGS.id,
66
- tooltip: core_1.nls.localize('theia/ai/session-settings-dialog/tooltip', 'Set Session Settings'),
67
- priority: 3,
68
- when: browser_1.ENABLE_AI_CONTEXT_KEY
69
- });
70
- }
71
- async openJsonDataDialog() {
72
- const widget = await this.chatContribution.widget;
73
- if (!widget) {
74
- return;
75
- }
76
- const dialog = new session_settings_dialog_1.SessionSettingsDialog(this.editorProvider, this.resources, this.sessionSettingsURI, {
77
- initialSettings: widget.getSettings()
78
- });
79
- const result = await dialog.open();
80
- if (result) {
81
- widget.setSettings(result);
82
- }
83
- }
84
- };
85
- exports.ChatViewWidgetToolbarContribution = ChatViewWidgetToolbarContribution;
86
- tslib_1.__decorate([
87
- (0, inversify_1.inject)(ai_chat_ui_contribution_1.AIChatContribution),
88
- tslib_1.__metadata("design:type", ai_chat_ui_contribution_1.AIChatContribution)
89
- ], ChatViewWidgetToolbarContribution.prototype, "chatContribution", void 0);
90
- tslib_1.__decorate([
91
- (0, inversify_1.inject)(command_1.CommandRegistry),
92
- tslib_1.__metadata("design:type", command_1.CommandRegistry)
93
- ], ChatViewWidgetToolbarContribution.prototype, "commandRegistry", void 0);
94
- tslib_1.__decorate([
95
- (0, inversify_1.inject)(monaco_editor_provider_1.MonacoEditorProvider),
96
- tslib_1.__metadata("design:type", monaco_editor_provider_1.MonacoEditorProvider)
97
- ], ChatViewWidgetToolbarContribution.prototype, "editorProvider", void 0);
98
- tslib_1.__decorate([
99
- (0, inversify_1.inject)(core_1.InMemoryResources),
100
- tslib_1.__metadata("design:type", core_1.InMemoryResources)
101
- ], ChatViewWidgetToolbarContribution.prototype, "resources", void 0);
102
- tslib_1.__decorate([
103
- (0, inversify_1.inject)(browser_1.AIActivationService),
104
- tslib_1.__metadata("design:type", Object)
105
- ], ChatViewWidgetToolbarContribution.prototype, "activationService", void 0);
106
- tslib_1.__decorate([
107
- (0, inversify_1.postConstruct)(),
108
- tslib_1.__metadata("design:type", Function),
109
- tslib_1.__metadata("design:paramtypes", []),
110
- tslib_1.__metadata("design:returntype", void 0)
111
- ], ChatViewWidgetToolbarContribution.prototype, "init", null);
112
- exports.ChatViewWidgetToolbarContribution = ChatViewWidgetToolbarContribution = tslib_1.__decorate([
113
- (0, inversify_1.injectable)()
114
- ], ChatViewWidgetToolbarContribution);
115
- //# sourceMappingURL=chat-view-widget-toolbar-contribution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-view-widget-toolbar-contribution.js","sourceRoot":"","sources":["../../src/browser/chat-view-widget-toolbar-contribution.tsx"],"names":[],"mappings":"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"}
@@ -1,60 +0,0 @@
1
- import { CommandService, Emitter, Event, MessageService, PreferenceService, URI } from '@theia/core';
2
- import { ChatRequest, ChatRequestModel, ChatService, ChatSession } from '@theia/ai-chat';
3
- import { BaseWidget, ExtractableWidget, Message, StatefulWidget } from '@theia/core/lib/browser';
4
- import { AIChatInputWidget } from './chat-input-widget';
5
- import { ChatViewTreeWidget } from './chat-tree-view/chat-view-tree-widget';
6
- import { AIActivationService } from '@theia/ai-core/lib/browser/ai-activation-service';
7
- import { AIVariableResolutionRequest } from '@theia/ai-core';
8
- import { ProgressBarFactory } from '@theia/core/lib/browser/progress-bar-factory';
9
- import { FrontendVariableService } from '@theia/ai-core/lib/browser';
10
- export declare namespace ChatViewWidget {
11
- interface State {
12
- locked?: boolean;
13
- temporaryLocked?: boolean;
14
- }
15
- }
16
- export declare class ChatViewWidget extends BaseWidget implements ExtractableWidget, StatefulWidget {
17
- readonly treeWidget: ChatViewTreeWidget;
18
- readonly inputWidget: AIChatInputWidget;
19
- static ID: string;
20
- static LABEL: string;
21
- protected chatService: ChatService;
22
- protected messageService: MessageService;
23
- protected readonly preferenceService: PreferenceService;
24
- protected readonly commandService: CommandService;
25
- protected readonly activationService: AIActivationService;
26
- protected readonly variableService: FrontendVariableService;
27
- protected readonly progressBarFactory: ProgressBarFactory;
28
- protected chatSession: ChatSession;
29
- protected _state: ChatViewWidget.State;
30
- protected readonly onStateChangedEmitter: Emitter<ChatViewWidget.State>;
31
- isExtractable: boolean;
32
- secondaryWindow: Window | undefined;
33
- constructor(treeWidget: ChatViewTreeWidget, inputWidget: AIChatInputWidget);
34
- protected init(): void;
35
- protected initListeners(): void;
36
- protected onActivateRequest(msg: Message): void;
37
- storeState(): object;
38
- restoreState(oldState: object & Partial<ChatViewWidget.State>): void;
39
- protected get state(): ChatViewWidget.State;
40
- protected set state(state: ChatViewWidget.State);
41
- get onStateChanged(): Event<ChatViewWidget.State>;
42
- protected onQuery(query?: string | ChatRequest, modeId?: string): Promise<void>;
43
- protected onUnpin(): void;
44
- protected onCancel(requestModel: ChatRequestModel): void;
45
- protected onDeleteChangeSet(sessionId: string): void;
46
- protected onDeleteChangeSetElement(sessionId: string, uri: URI): void;
47
- protected onScrollLockChange(temporaryLocked: boolean): void;
48
- lock(): void;
49
- unlock(): void;
50
- setTemporaryLock(locked: boolean): void;
51
- get isLocked(): boolean;
52
- addContext(variable: AIVariableResolutionRequest): void;
53
- setSettings(settings: {
54
- [key: string]: unknown;
55
- }): void;
56
- getSettings(): {
57
- [key: string]: unknown;
58
- } | undefined;
59
- }
60
- //# sourceMappingURL=chat-view-widget.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-view-widget.d.ts","sourceRoot":"","sources":["../../src/browser/chat-view-widget.tsx"],"names":[],"mappings":"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"}