@theia/ai-chat-ui 1.73.0-next.3 → 1.73.0-next.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/ai-chat-ui-contribution.d.ts +33 -8
- package/lib/browser/ai-chat-ui-contribution.d.ts.map +1 -1
- package/lib/browser/ai-chat-ui-contribution.js +154 -85
- package/lib/browser/ai-chat-ui-contribution.js.map +1 -1
- package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-chat-ui-frontend-module.js +4 -2
- package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
- package/lib/browser/chat-input-widget.d.ts +2 -1
- package/lib/browser/chat-input-widget.d.ts.map +1 -1
- package/lib/browser/chat-input-widget.js +11 -6
- package/lib/browser/chat-input-widget.js.map +1 -1
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.d.ts +8 -1
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.js +30 -1
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/tool-confirmation.d.ts +15 -1
- package/lib/browser/chat-response-renderer/tool-confirmation.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/tool-confirmation.js +60 -17
- package/lib/browser/chat-response-renderer/tool-confirmation.js.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts +8 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +31 -5
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js +102 -0
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +2 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.js +6 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
- package/lib/browser/chat-view-commands.d.ts +6 -3
- package/lib/browser/chat-view-commands.d.ts.map +1 -1
- package/lib/browser/chat-view-commands.js +13 -20
- package/lib/browser/chat-view-commands.js.map +1 -1
- package/lib/browser/chat-view-widget-toolbar-contribution.d.ts.map +1 -1
- package/lib/browser/chat-view-widget-toolbar-contribution.js +3 -0
- package/lib/browser/chat-view-widget-toolbar-contribution.js.map +1 -1
- package/lib/browser/chat-view-widget.d.ts +1 -2
- package/lib/browser/chat-view-widget.d.ts.map +1 -1
- package/lib/browser/chat-view-widget.js +3 -8
- package/lib/browser/chat-view-widget.js.map +1 -1
- package/lib/browser/tool-confirmation-keybinding-contribution.d.ts +25 -0
- package/lib/browser/tool-confirmation-keybinding-contribution.d.ts.map +1 -0
- package/lib/browser/tool-confirmation-keybinding-contribution.js +106 -0
- package/lib/browser/tool-confirmation-keybinding-contribution.js.map +1 -0
- package/package.json +11 -11
- package/src/browser/ai-chat-ui-contribution.ts +195 -92
- package/src/browser/ai-chat-ui-frontend-module.ts +5 -3
- package/src/browser/chat-input-widget.tsx +12 -9
- package/src/browser/chat-response-renderer/delegation-tool-renderer.tsx +34 -3
- package/src/browser/chat-response-renderer/tool-confirmation.tsx +122 -30
- package/src/browser/chat-response-renderer/toolcall-part-renderer.spec.ts +127 -0
- package/src/browser/chat-response-renderer/toolcall-part-renderer.tsx +51 -6
- package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +5 -2
- package/src/browser/chat-view-commands.ts +12 -21
- package/src/browser/chat-view-widget-toolbar-contribution.tsx +3 -0
- package/src/browser/chat-view-widget.tsx +4 -8
- package/src/browser/style/index.css +9 -0
- package/src/browser/tool-confirmation-keybinding-contribution.ts +104 -0
- package/lib/browser/ai-chat-navigation-service.d.ts +0 -26
- package/lib/browser/ai-chat-navigation-service.d.ts.map +0 -1
- package/lib/browser/ai-chat-navigation-service.js +0 -158
- package/lib/browser/ai-chat-navigation-service.js.map +0 -1
- package/src/browser/ai-chat-navigation-service.ts +0 -143
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { CommandRegistry, MessageService, PreferenceService, QuickInputButton, QuickInputService, QuickPickItem } from '@theia/core';
|
|
1
|
+
import { CommandRegistry, Disposable, Emitter, Event, MessageService, PreferenceService, QuickInputButton, QuickInputService, QuickPickItem } from '@theia/core';
|
|
2
2
|
import { ILogger } from '@theia/core/lib/common/logger';
|
|
3
|
-
import { FrontendApplicationContribution, Widget } from '@theia/core/lib/browser';
|
|
4
|
-
import {
|
|
3
|
+
import { FrontendApplicationContribution, KeybindingRegistry, Widget } from '@theia/core/lib/browser';
|
|
4
|
+
import { ContextKey, ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
5
5
|
import { ChatAgent, ChatService } from '@theia/ai-chat';
|
|
6
6
|
import { ChatAgentService } from '@theia/ai-chat/lib/common/chat-agent-service';
|
|
7
7
|
import { EditorManager } from '@theia/editor/lib/browser/editor-manager';
|
|
@@ -18,6 +18,14 @@ export declare class AIChatContribution extends AbstractViewContribution<ChatVie
|
|
|
18
18
|
protected readonly taskContextService: TaskContextService;
|
|
19
19
|
protected readonly messageService: MessageService;
|
|
20
20
|
protected readonly chatAgentService: ChatAgentService;
|
|
21
|
+
protected readonly contextKeyService: ContextKeyService;
|
|
22
|
+
/**
|
|
23
|
+
* Context key set to true while the chat view widget is the active widget in the shell.
|
|
24
|
+
* Broader than `chatInputFocus`/`chatResponseFocus` (which require DOM focus on a specific
|
|
25
|
+
* sub-widget): clicks on non-focusable parts of the chat view still flip this key, so chat
|
|
26
|
+
* view keybindings remain available.
|
|
27
|
+
*/
|
|
28
|
+
protected chatViewActiveKey: ContextKey<boolean>;
|
|
21
29
|
protected readonly editorManager: EditorManager;
|
|
22
30
|
protected readonly activationService: AIActivationService;
|
|
23
31
|
protected readonly logger: ILogger;
|
|
@@ -27,15 +35,36 @@ export declare class AIChatContribution extends AbstractViewContribution<ChatVie
|
|
|
27
35
|
* command enablement checks which are synchronous.
|
|
28
36
|
*/
|
|
29
37
|
protected hasPersistedSessions: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Tracks whether the currently active session is empty (= the home / overview is shown).
|
|
40
|
+
* Used to hide toolbar items that only make sense within an open chat (Home,
|
|
41
|
+
* lock/unlock auto-scroll, Summarize Current Session, ...).
|
|
42
|
+
*/
|
|
43
|
+
protected activeSessionEmpty: boolean;
|
|
44
|
+
/** Model listener for the active session; disposed and re-bound on active-session changes. */
|
|
45
|
+
protected activeSessionModelListener: Disposable | undefined;
|
|
46
|
+
protected readonly onActiveSessionEmptyChangedEmitter: Emitter<void>;
|
|
47
|
+
/** Fires when {@link isActiveSessionEmpty} flips. Consumed by toolbar items that hide on the overview. */
|
|
48
|
+
readonly onActiveSessionEmptyChanged: Event<void>;
|
|
49
|
+
/** True when the chat view currently displays the home/overview (the active session has no requests). */
|
|
50
|
+
get isActiveSessionEmpty(): boolean;
|
|
30
51
|
protected static readonly RENAME_CHAT_BUTTON: QuickInputButton;
|
|
31
52
|
protected static readonly REMOVE_CHAT_BUTTON: QuickInputButton;
|
|
32
|
-
protected readonly navigationService: AIChatNavigationService;
|
|
33
53
|
protected readonly secondaryWindowHandler: SecondaryWindowHandler;
|
|
34
54
|
constructor();
|
|
35
55
|
initialize(): void;
|
|
56
|
+
protected updateChatViewActiveKey(): void;
|
|
57
|
+
/**
|
|
58
|
+
* (Re-)attach a model listener to the currently active session so the Home
|
|
59
|
+
* toolbar item can react when the user submits the first message and the welcome view
|
|
60
|
+
* is replaced by the chat tree.
|
|
61
|
+
*/
|
|
62
|
+
protected attachToActiveSession(): void;
|
|
63
|
+
protected setActiveSessionEmpty(empty: boolean): void;
|
|
36
64
|
initializeLayout(): Promise<void>;
|
|
37
65
|
protected checkPersistedSessions(): Promise<void>;
|
|
38
66
|
registerCommands(registry: CommandRegistry): void;
|
|
67
|
+
registerKeybindings(keybindings: KeybindingRegistry): void;
|
|
39
68
|
registerToolbarItems(registry: TabBarToolbarRegistry): void;
|
|
40
69
|
protected selectChat(sessionId?: string): Promise<void>;
|
|
41
70
|
protected askForChatSession(): Promise<QuickPickItem | undefined>;
|
|
@@ -45,10 +74,6 @@ export declare class AIChatContribution extends AbstractViewContribution<ChatVie
|
|
|
45
74
|
protected extractChatView(chatView: ChatViewWidget): void;
|
|
46
75
|
canExtractChatView(chatView: ChatViewWidget): boolean;
|
|
47
76
|
protected summarizeActiveSession(): Promise<string | undefined>;
|
|
48
|
-
/**
|
|
49
|
-
* Prompts the user to select a chat agent
|
|
50
|
-
* @returns The selected agent or undefined if cancelled
|
|
51
|
-
*/
|
|
52
77
|
/**
|
|
53
78
|
* Prompts the user to select a chat agent with an optional default (pre-selected) agent.
|
|
54
79
|
* @param defaultAgentId The id of the agent to pre-select, if present
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-ui-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,
|
|
1
|
+
{"version":3,"file":"ai-chat-ui-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,8 +22,8 @@ const inversify_1 = require("@theia/core/shared/inversify");
|
|
|
22
22
|
const core_1 = require("@theia/core");
|
|
23
23
|
const logger_1 = require("@theia/core/lib/common/logger");
|
|
24
24
|
const browser_1 = require("@theia/core/lib/browser");
|
|
25
|
+
const context_key_service_1 = require("@theia/core/lib/browser/context-key-service");
|
|
25
26
|
const chat_view_commands_1 = require("./chat-view-commands");
|
|
26
|
-
const ai_chat_navigation_service_1 = require("./ai-chat-navigation-service");
|
|
27
27
|
const ai_chat_1 = require("@theia/ai-chat");
|
|
28
28
|
const chat_agent_service_1 = require("@theia/ai-chat/lib/common/chat-agent-service");
|
|
29
29
|
const editor_manager_1 = require("@theia/editor/lib/browser/editor-manager");
|
|
@@ -41,6 +41,10 @@ const ai_chat_preferences_1 = require("@theia/ai-chat/lib/common/ai-chat-prefere
|
|
|
41
41
|
exports.AI_CHAT_TOGGLE_COMMAND_ID = 'aiChat:toggle';
|
|
42
42
|
let AIChatContribution = class AIChatContribution extends view_contribution_1.AbstractViewContribution {
|
|
43
43
|
static { AIChatContribution_1 = this; }
|
|
44
|
+
/** True when the chat view currently displays the home/overview (the active session has no requests). */
|
|
45
|
+
get isActiveSessionEmpty() {
|
|
46
|
+
return this.activeSessionEmpty;
|
|
47
|
+
}
|
|
44
48
|
static { this.RENAME_CHAT_BUTTON = {
|
|
45
49
|
iconClass: 'codicon-edit',
|
|
46
50
|
tooltip: core_1.nls.localizeByDefault('Rename Chat'),
|
|
@@ -65,6 +69,15 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
65
69
|
* command enablement checks which are synchronous.
|
|
66
70
|
*/
|
|
67
71
|
this.hasPersistedSessions = false;
|
|
72
|
+
/**
|
|
73
|
+
* Tracks whether the currently active session is empty (= the home / overview is shown).
|
|
74
|
+
* Used to hide toolbar items that only make sense within an open chat (Home,
|
|
75
|
+
* lock/unlock auto-scroll, Summarize Current Session, ...).
|
|
76
|
+
*/
|
|
77
|
+
this.activeSessionEmpty = true;
|
|
78
|
+
this.onActiveSessionEmptyChangedEmitter = new core_1.Emitter();
|
|
79
|
+
/** Fires when {@link isActiveSessionEmpty} flips. Consumed by toolbar items that hide on the overview. */
|
|
80
|
+
this.onActiveSessionEmptyChanged = this.onActiveSessionEmptyChangedEmitter.event;
|
|
68
81
|
}
|
|
69
82
|
initialize() {
|
|
70
83
|
this.chatService.onSessionEvent(event => {
|
|
@@ -74,6 +87,7 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
74
87
|
if (event.focus) {
|
|
75
88
|
this.openView({ activate: true });
|
|
76
89
|
}
|
|
90
|
+
this.attachToActiveSession();
|
|
77
91
|
});
|
|
78
92
|
// Re-check persisted sessions when storage preferences change
|
|
79
93
|
this.preferenceService.onPreferenceChanged(event => {
|
|
@@ -82,6 +96,40 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
82
96
|
}
|
|
83
97
|
});
|
|
84
98
|
this.checkPersistedSessions();
|
|
99
|
+
this.attachToActiveSession();
|
|
100
|
+
this.chatViewActiveKey = this.contextKeyService.createKey('chatViewActive', false);
|
|
101
|
+
this.updateChatViewActiveKey();
|
|
102
|
+
this.shell.onDidChangeActiveWidget(() => this.updateChatViewActiveKey());
|
|
103
|
+
this.shell.onDidChangeCurrentWidget(() => this.updateChatViewActiveKey());
|
|
104
|
+
}
|
|
105
|
+
updateChatViewActiveKey() {
|
|
106
|
+
const active = this.shell.activeWidget instanceof chat_view_widget_1.ChatViewWidget
|
|
107
|
+
|| this.shell.currentWidget instanceof chat_view_widget_1.ChatViewWidget;
|
|
108
|
+
this.chatViewActiveKey.set(active);
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* (Re-)attach a model listener to the currently active session so the Home
|
|
112
|
+
* toolbar item can react when the user submits the first message and the welcome view
|
|
113
|
+
* is replaced by the chat tree.
|
|
114
|
+
*/
|
|
115
|
+
attachToActiveSession() {
|
|
116
|
+
this.activeSessionModelListener?.dispose();
|
|
117
|
+
this.activeSessionModelListener = undefined;
|
|
118
|
+
const session = this.chatService.getActiveSession();
|
|
119
|
+
if (!session) {
|
|
120
|
+
this.setActiveSessionEmpty(true);
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this.setActiveSessionEmpty(session.model.isEmpty());
|
|
124
|
+
this.activeSessionModelListener = session.model.onDidChange(() => {
|
|
125
|
+
this.setActiveSessionEmpty(session.model.isEmpty());
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
setActiveSessionEmpty(empty) {
|
|
129
|
+
if (this.activeSessionEmpty !== empty) {
|
|
130
|
+
this.activeSessionEmpty = empty;
|
|
131
|
+
this.onActiveSessionEmptyChangedEmitter.fire();
|
|
132
|
+
}
|
|
85
133
|
}
|
|
86
134
|
async initializeLayout() {
|
|
87
135
|
try {
|
|
@@ -103,23 +151,34 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
103
151
|
registerCommands(registry) {
|
|
104
152
|
super.registerCommands(registry);
|
|
105
153
|
registry.registerCommand(chat_view_commands_1.ChatCommands.SCROLL_LOCK_WIDGET, {
|
|
106
|
-
isEnabled: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked),
|
|
107
|
-
isVisible: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked),
|
|
154
|
+
isEnabled: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked) && !this.activeSessionEmpty,
|
|
155
|
+
isVisible: widget => this.withWidget(widget, chatWidget => !chatWidget.isLocked) && !this.activeSessionEmpty,
|
|
108
156
|
execute: widget => this.withWidget(widget, chatWidget => {
|
|
109
157
|
chatWidget.lock();
|
|
110
158
|
return true;
|
|
111
159
|
})
|
|
112
160
|
});
|
|
113
161
|
registry.registerCommand(chat_view_commands_1.ChatCommands.SCROLL_UNLOCK_WIDGET, {
|
|
114
|
-
isEnabled: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked),
|
|
115
|
-
isVisible: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked),
|
|
162
|
+
isEnabled: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked) && !this.activeSessionEmpty,
|
|
163
|
+
isVisible: widget => this.withWidget(widget, chatWidget => chatWidget.isLocked) && !this.activeSessionEmpty,
|
|
116
164
|
execute: widget => this.withWidget(widget, chatWidget => {
|
|
117
165
|
chatWidget.unlock();
|
|
118
166
|
return true;
|
|
119
167
|
})
|
|
120
168
|
});
|
|
121
|
-
registry.registerCommand(chat_view_commands_1.
|
|
122
|
-
execute:
|
|
169
|
+
registry.registerCommand(chat_view_commands_1.AI_CHAT_HOME, {
|
|
170
|
+
execute: async () => {
|
|
171
|
+
await this.openView();
|
|
172
|
+
const activeSession = this.chatService.getActiveSession();
|
|
173
|
+
// If the active session is already empty we are on the overview: just focus it
|
|
174
|
+
// instead of spawning another redundant empty session.
|
|
175
|
+
if (activeSession?.model.isEmpty()) {
|
|
176
|
+
this.chatService.setActiveSession(activeSession.id, { focus: true });
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
this.chatService.createSession(ai_chat_1.ChatAgentLocation.Panel, { focus: true });
|
|
180
|
+
}
|
|
181
|
+
},
|
|
123
182
|
isVisible: widget => this.activationService.isActive,
|
|
124
183
|
isEnabled: widget => this.activationService.canRun,
|
|
125
184
|
});
|
|
@@ -147,6 +206,7 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
147
206
|
}
|
|
148
207
|
const activeSession = this.chatService.getActiveSession();
|
|
149
208
|
return activeSession?.model.location === ai_chat_1.ChatAgentLocation.Panel
|
|
209
|
+
&& !activeSession.model.isEmpty()
|
|
150
210
|
&& !this.taskContextService.hasSummary(activeSession);
|
|
151
211
|
},
|
|
152
212
|
isEnabled: widget => {
|
|
@@ -227,16 +287,6 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
227
287
|
isVisible: () => this.activationService.isActive,
|
|
228
288
|
isEnabled: () => this.activationService.canRun
|
|
229
289
|
});
|
|
230
|
-
registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_NAVIGATE_BACK, {
|
|
231
|
-
execute: () => this.navigationService.back(),
|
|
232
|
-
isEnabled: widget => this.withWidget(widget, () => this.navigationService.canGoBack),
|
|
233
|
-
isVisible: widget => this.activationService.isActive && !!this.withWidget(widget)
|
|
234
|
-
});
|
|
235
|
-
registry.registerCommand(chat_view_commands_1.ChatCommands.AI_CHAT_NAVIGATE_FORWARD, {
|
|
236
|
-
execute: () => this.navigationService.forward(),
|
|
237
|
-
isEnabled: widget => this.withWidget(widget, () => this.navigationService.canGoForward),
|
|
238
|
-
isVisible: widget => this.activationService.isActive && !!this.withWidget(widget)
|
|
239
|
-
});
|
|
240
290
|
registry.registerCommand(chat_node_toolbar_action_contribution_1.ChatNodeToolbarCommands.EDIT, {
|
|
241
291
|
isEnabled: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && !node.request.isEditing,
|
|
242
292
|
isVisible: node => (0, chat_tree_view_1.isEditableRequestNode)(node) && !node.request.isEditing,
|
|
@@ -272,42 +322,47 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
272
322
|
await this.chatService.sendRequest(node.sessionId, request.request);
|
|
273
323
|
}
|
|
274
324
|
catch (error) {
|
|
275
|
-
|
|
325
|
+
this.logger.error('Failed to retry chat message:', error);
|
|
276
326
|
this.messageService.error(core_1.nls.localize('theia/ai/chat-ui/failedToRetry', 'Failed to retry message'));
|
|
277
327
|
}
|
|
278
328
|
}
|
|
279
329
|
});
|
|
280
330
|
}
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
when:
|
|
331
|
+
registerKeybindings(keybindings) {
|
|
332
|
+
super.registerKeybindings(keybindings);
|
|
333
|
+
// Scoped to chat view active so we don't shadow global bindings (e.g. ctrl+shift+l =
|
|
334
|
+
// "Select All Occurrences" in editors). We use chatViewActive in addition to the more
|
|
335
|
+
// specific input/response focus keys so clicks on non-focusable parts of the chat view
|
|
336
|
+
// (e.g. plain markdown text in a response) don't silently disable the keybindings.
|
|
337
|
+
// Avoid plain Ctrl+L: Monaco binds it to "Expand Line Selection" inside the chat input
|
|
338
|
+
// (a Monaco editor) and wins when the input has focus.
|
|
339
|
+
const chatScope = '(chatInputFocus || chatResponseFocus || chatViewActive)';
|
|
340
|
+
keybindings.registerKeybinding({
|
|
341
|
+
command: chat_view_commands_1.AI_CHAT_HOME.id,
|
|
342
|
+
keybinding: 'ctrlcmd+shift+l',
|
|
343
|
+
when: chatScope
|
|
344
|
+
});
|
|
345
|
+
keybindings.registerKeybinding({
|
|
346
|
+
command: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.id,
|
|
347
|
+
keybinding: 'ctrlcmd+alt+l',
|
|
348
|
+
when: chatScope
|
|
299
349
|
});
|
|
350
|
+
}
|
|
351
|
+
registerToolbarItems(registry) {
|
|
352
|
+
// No explicit `tooltip`: the toolbar framework falls back to the command label and appends
|
|
353
|
+
// the command's keybinding accelerator itself (see RenderedToolbarItemImpl.renderItem).
|
|
300
354
|
registry.registerItem({
|
|
301
|
-
id: chat_view_commands_1.
|
|
302
|
-
command: chat_view_commands_1.
|
|
303
|
-
|
|
304
|
-
|
|
355
|
+
id: chat_view_commands_1.AI_CHAT_HOME.id,
|
|
356
|
+
command: chat_view_commands_1.AI_CHAT_HOME.id,
|
|
357
|
+
onDidChange: this.onActiveSessionEmptyChangedEmitter.event,
|
|
358
|
+
// Hide on the overview itself (the active session is empty); only show when there
|
|
359
|
+
// is an actual chat to return from.
|
|
360
|
+
isVisible: widget => this.activationService.isActive && this.withWidget(widget) && !this.activeSessionEmpty,
|
|
305
361
|
when: browser_2.ENABLE_AI_CONTEXT_KEY
|
|
306
362
|
});
|
|
307
363
|
registry.registerItem({
|
|
308
364
|
id: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.id,
|
|
309
365
|
command: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.id,
|
|
310
|
-
tooltip: chat_view_commands_1.AI_CHAT_SHOW_CHATS_COMMAND.label,
|
|
311
366
|
isVisible: widget => this.activationService.isActive && this.withWidget(widget),
|
|
312
367
|
when: browser_2.ENABLE_AI_CONTEXT_KEY
|
|
313
368
|
});
|
|
@@ -325,6 +380,7 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
325
380
|
this.chatService.onSessionEvent(event => event.type === 'activeChange' && sessionSummarizibilityChangedEmitter.fire());
|
|
326
381
|
this.activationService.onDidChangeActiveStatus(() => sessionSummarizibilityChangedEmitter.fire());
|
|
327
382
|
this.activationService.onDidChangeCanRun(() => sessionSummarizibilityChangedEmitter.fire());
|
|
383
|
+
this.onActiveSessionEmptyChanged(() => sessionSummarizibilityChangedEmitter.fire());
|
|
328
384
|
registry.registerItem({
|
|
329
385
|
id: 'chat-view.' + chat_view_commands_1.ChatCommands.AI_CHAT_SUMMARIZE_CURRENT_SESSION.id,
|
|
330
386
|
command: chat_view_commands_1.ChatCommands.AI_CHAT_SUMMARIZE_CURRENT_SESSION.id,
|
|
@@ -354,56 +410,73 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
354
410
|
const activeSessions = this.chatService.getSessions()
|
|
355
411
|
.filter(session => session.title)
|
|
356
412
|
.map(session => ({
|
|
357
|
-
session,
|
|
358
413
|
isActive: true,
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
414
|
+
id: session.id,
|
|
415
|
+
title: session.title,
|
|
416
|
+
lastDate: session.lastInteraction ? session.lastInteraction.getTime() : 0,
|
|
417
|
+
firstRequestText: session.model.getRequests().at(0)?.request.text,
|
|
418
|
+
agentIconClass: session.pinnedAgent?.iconClass,
|
|
419
|
+
agentName: session.pinnedAgent?.name
|
|
420
|
+
}))
|
|
421
|
+
.sort((a, b) => b.lastDate - a.lastDate);
|
|
362
422
|
let persistedSessions = [];
|
|
363
423
|
try {
|
|
364
424
|
const persistedIndex = await this.chatService.getPersistedSessions();
|
|
365
|
-
const activeIds = new Set(activeSessions.map(s => s.
|
|
425
|
+
const activeIds = new Set(activeSessions.map(s => s.id));
|
|
366
426
|
persistedSessions = Object.values(persistedIndex)
|
|
367
427
|
.filter(metadata => !activeIds.has(metadata.sessionId))
|
|
368
|
-
.map(metadata =>
|
|
369
|
-
metadata
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
428
|
+
.map(metadata => {
|
|
429
|
+
const agent = metadata.pinnedAgentId ? this.chatAgentService.getAgent(metadata.pinnedAgentId) : undefined;
|
|
430
|
+
return {
|
|
431
|
+
isActive: false,
|
|
432
|
+
id: metadata.sessionId,
|
|
433
|
+
title: metadata.title,
|
|
434
|
+
lastDate: metadata.saveDate,
|
|
435
|
+
firstRequestText: undefined,
|
|
436
|
+
agentIconClass: agent?.iconClass,
|
|
437
|
+
agentName: agent?.name
|
|
438
|
+
};
|
|
439
|
+
})
|
|
440
|
+
.sort((a, b) => b.lastDate - a.lastDate);
|
|
373
441
|
}
|
|
374
442
|
catch (error) {
|
|
375
443
|
this.logger.error('Failed to load persisted sessions, showing only active sessions', error);
|
|
376
444
|
// Continue with just active sessions
|
|
377
445
|
}
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
}
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
title: s.metadata.title,
|
|
391
|
-
lastDate: s.lastDate,
|
|
392
|
-
firstRequestText: undefined
|
|
393
|
-
}))
|
|
394
|
-
].sort((a, b) => b.lastDate - a.lastDate);
|
|
395
|
-
return allSessions.map(session => {
|
|
396
|
-
// Add icon for persisted sessions to visually distinguish them
|
|
397
|
-
const icon = session.isActive ? '' : '$(archive) ';
|
|
446
|
+
const toItem = (session) => {
|
|
447
|
+
// Mark restored sessions with an archive icon; active sessions get the pinned agent's icon
|
|
448
|
+
// to match the home view. QuickPick labels support inline codicons via `$(name)`, so we
|
|
449
|
+
// extract the codicon name from the agent's iconClass (e.g. "codicon codicon-foo" -> "foo").
|
|
450
|
+
let icon;
|
|
451
|
+
if (session.isActive) {
|
|
452
|
+
const codiconName = session.agentIconClass?.match(/codicon-([\w-]+)/)?.[1] ?? 'comment-discussion';
|
|
453
|
+
icon = `$(${codiconName}) `;
|
|
454
|
+
}
|
|
455
|
+
else {
|
|
456
|
+
icon = '$(archive) ';
|
|
457
|
+
}
|
|
398
458
|
const label = `${icon}${session.title}`;
|
|
399
|
-
|
|
459
|
+
// Mirror the home-view item subtitle: "@Agent · time ago"
|
|
460
|
+
const timeAgo = (0, chat_date_utils_1.formatTimeAgo)(session.lastDate);
|
|
461
|
+
const description = session.agentName ? `@${session.agentName} · ${timeAgo}` : timeAgo;
|
|
462
|
+
return {
|
|
400
463
|
label,
|
|
401
|
-
description
|
|
464
|
+
description,
|
|
402
465
|
detail: session.firstRequestText || (session.isActive ? undefined : core_1.nls.localize('theia/ai/chat-ui/persistedSession', 'Persisted session (click to restore)')),
|
|
403
466
|
id: session.id,
|
|
404
467
|
buttons: [AIChatContribution_1.RENAME_CHAT_BUTTON, AIChatContribution_1.REMOVE_CHAT_BUTTON]
|
|
405
|
-
}
|
|
406
|
-
}
|
|
468
|
+
};
|
|
469
|
+
};
|
|
470
|
+
const items = [];
|
|
471
|
+
if (activeSessions.length > 0) {
|
|
472
|
+
items.push({ type: 'separator', label: core_1.nls.localizeByDefault('Active') });
|
|
473
|
+
items.push(...activeSessions.map(toItem));
|
|
474
|
+
}
|
|
475
|
+
if (persistedSessions.length > 0) {
|
|
476
|
+
items.push({ type: 'separator', label: core_1.nls.localize('theia/ai/chat-ui/sectionRestored', 'Restored') });
|
|
477
|
+
items.push(...persistedSessions.map(toItem));
|
|
478
|
+
}
|
|
479
|
+
return items;
|
|
407
480
|
};
|
|
408
481
|
const defer = new promise_util_1.Deferred();
|
|
409
482
|
const quickPick = this.quickInputService.createQuickPick();
|
|
@@ -506,15 +579,11 @@ let AIChatContribution = class AIChatContribution extends view_contribution_1.Ab
|
|
|
506
579
|
return;
|
|
507
580
|
}
|
|
508
581
|
return this.taskContextService.summarize(activeSession).catch(err => {
|
|
509
|
-
|
|
582
|
+
this.logger.warn('Error while summarizing session:', err);
|
|
510
583
|
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.'));
|
|
511
584
|
return undefined;
|
|
512
585
|
});
|
|
513
586
|
}
|
|
514
|
-
/**
|
|
515
|
-
* Prompts the user to select a chat agent
|
|
516
|
-
* @returns The selected agent or undefined if cancelled
|
|
517
|
-
*/
|
|
518
587
|
/**
|
|
519
588
|
* Prompts the user to select a chat agent with an optional default (pre-selected) agent.
|
|
520
589
|
* @param defaultAgentId The id of the agent to pre-select, if present
|
|
@@ -622,6 +691,10 @@ tslib_1.__decorate([
|
|
|
622
691
|
(0, inversify_1.inject)(chat_agent_service_1.ChatAgentService),
|
|
623
692
|
tslib_1.__metadata("design:type", Object)
|
|
624
693
|
], AIChatContribution.prototype, "chatAgentService", void 0);
|
|
694
|
+
tslib_1.__decorate([
|
|
695
|
+
(0, inversify_1.inject)(context_key_service_1.ContextKeyService),
|
|
696
|
+
tslib_1.__metadata("design:type", Object)
|
|
697
|
+
], AIChatContribution.prototype, "contextKeyService", void 0);
|
|
625
698
|
tslib_1.__decorate([
|
|
626
699
|
(0, inversify_1.inject)(editor_manager_1.EditorManager),
|
|
627
700
|
tslib_1.__metadata("design:type", editor_manager_1.EditorManager)
|
|
@@ -632,17 +705,13 @@ tslib_1.__decorate([
|
|
|
632
705
|
], AIChatContribution.prototype, "activationService", void 0);
|
|
633
706
|
tslib_1.__decorate([
|
|
634
707
|
(0, inversify_1.inject)(logger_1.ILogger),
|
|
635
|
-
(0, inversify_1.named)('AIChatContribution'),
|
|
708
|
+
(0, inversify_1.named)('ai-chat-ui:AIChatContribution'),
|
|
636
709
|
tslib_1.__metadata("design:type", Object)
|
|
637
710
|
], AIChatContribution.prototype, "logger", void 0);
|
|
638
711
|
tslib_1.__decorate([
|
|
639
712
|
(0, inversify_1.inject)(core_1.PreferenceService),
|
|
640
713
|
tslib_1.__metadata("design:type", Object)
|
|
641
714
|
], AIChatContribution.prototype, "preferenceService", void 0);
|
|
642
|
-
tslib_1.__decorate([
|
|
643
|
-
(0, inversify_1.inject)(ai_chat_navigation_service_1.AIChatNavigationService),
|
|
644
|
-
tslib_1.__metadata("design:type", ai_chat_navigation_service_1.AIChatNavigationService)
|
|
645
|
-
], AIChatContribution.prototype, "navigationService", void 0);
|
|
646
715
|
tslib_1.__decorate([
|
|
647
716
|
(0, inversify_1.inject)(secondary_window_handler_1.SecondaryWindowHandler),
|
|
648
717
|
tslib_1.__metadata("design:type", secondary_window_handler_1.SecondaryWindowHandler)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-chat-ui-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-chat-ui-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;;;;;AAEhF,4DAAwF;AACxF,sCAA0J;AAC1J,0DAAwD;AACxD,qDAAiG;AACjG,6DAI8B;AAC9B,6EAAuE;AACvE,4CAA6H;AAC7H,qFAAgF;AAChF,6EAAyE;AACzE,uFAA2F;AAE3F,yDAAoD;AACpD,sEAA+D;AAC/D,+FAA0F;AAC1F,uDAAkD;AAClD,wDAAkH;AAClH,mGAAkF;AAClF,qDAAsH;AACtH,4FAAyF;AACzF,0FAAqF;AACrF,uFAAqF;AAExE,QAAA,yBAAyB,GAAG,eAAe,CAAC;AAGlD,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,4CAAwC;;aA4BlD,uBAAkB,GAAqB;QAC7D,SAAS,EAAE,cAAc;QACzB,OAAO,EAAE,UAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC;KAChD,AAH2C,CAG1C;aACwB,uBAAkB,GAAqB;QAC7D,SAAS,EAAE,sBAAsB;QACjC,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,6BAA6B,EAAE,aAAa,CAAC;KACtE,AAH2C,CAG1C;IAQF;QACI,KAAK,CAAC;YACF,QAAQ,EAAE,iCAAc,CAAC,EAAE;YAC3B,UAAU,EAAE,iCAAc,CAAC,KAAK;YAChC,oBAAoB,EAAE;gBAClB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,GAAG;aACZ;YACD,eAAe,EAAE,iCAAyB;YAC1C,gBAAgB,EAAE,YAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY;SACxD,CAAC,CAAC;QA/BP;;;WAGG;QACO,yBAAoB,GAAG,KAAK,CAAC;IA4BvC,CAAC;IAGD,UAAU;QACN,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;YACpC,IAAI,CAAC,IAAA,qCAA2B,EAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,OAAO;YACX,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YACtC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,8DAA8D;QAC9D,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,KAAK,CAAC,cAAc,KAAK,0CAAoB,EAAE,CAAC;gBAChD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAClC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,KAAK,CAAC,CAAC;QAChF,CAAC;IACL,CAAC;IAES,KAAK,CAAC,sBAAsB;QAClC,IAAI,CAAC;YACD,IAAI,CAAC,oBAAoB,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;QAC9E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QACtC,CAAC;IACL,CAAC;IAEQ,gBAAgB,CAAC,QAAyB;QAC/C,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACjC,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,kBAAkB,EAAE;YACtD,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;YAChF,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC;YAChF,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;gBACpD,UAAU,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC;SACL,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,oBAAoB,EAAE;YACxD,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC/E,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC/E,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;gBACpD,UAAU,CAAC,MAAM,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC;YAChB,CAAC,CAAC;SACL,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,oDAA+B,EAAE;YACtD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,2BAAiB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACnH,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ;YACpD,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM;SACrD,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,6BAA6B,EAAE;YACjE,OAAO,EAAE,KAAK,IAAI,EAAE;gBAChB,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC/C,IAAI,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBACtC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,2BAAiB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;gBACvH,MAAM,eAAe,GAAG,EAAE,QAAQ,EAAE,6CAAqB,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;gBACrE,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YAC3D,CAAC;YACD,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;SACzB,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,iCAAiC,EAAE;YACrE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAClD,SAAS,EAAE,MAAM,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACvD,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACzD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,OAAO,aAAa,EAAE,KAAK,CAAC,QAAQ,KAAK,2BAAiB,CAAC,KAAK;uBACzD,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC9D,CAAC;YACD,SAAS,EAAE,MAAM,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACrD,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACzD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,OAAO,aAAa,EAAE,KAAK,CAAC,QAAQ,KAAK,2BAAiB,CAAC,KAAK;uBACzD,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE;uBAC9B,CAAC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC9D,CAAC;SACJ,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,wCAAwC,EAAE;YAC5E,OAAO,EAAE,KAAK,IAAI,EAAE;gBAChB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBACpB,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3C,CAAC;YACD,SAAS,EAAE,MAAM,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACvD,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACzD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBAC1D,OAAO,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAChF,CAAC;YACD,SAAS,EAAE,MAAM,CAAC,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;oBAAC,OAAO,KAAK,CAAC;gBAAC,CAAC;gBACrD,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;SACJ,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,0CAA0C,EAAE;YAC9E,OAAO,EAAE,KAAK,IAAI,EAAE;gBAChB,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBACpE,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBACnC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,CAAC,aAAa,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,2BAAiB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC3G,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,6CAAqB,EAAE,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACvG,CAAC;YACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ;YAChD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM;SACjD,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,+CAA0B,EAAE;YACjD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAChB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;YAC7B,CAAC;YACD,SAAS,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;oBACjC,OAAO,KAAK,CAAC;gBACjB,CAAC;gBACD,wEAAwE;gBACxE,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC;YACxG,CAAC;YACD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ;SACnD,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,sBAAsB,EAAE;YAC1D,OAAO,EAAE,CAAC,OAAqC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;YACjI,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ;YAChD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM;SACjD,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,sBAAsB,EAAE;YAC1D,OAAO,EAAE,CAAC,OAAqC,EAAE,OAAiB,EAAE,EAAE,CAClE,IAAI,CAAC,aAAa,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/H,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ;YAChD,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM;SACjD,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,qBAAqB,EAAE;YACzD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YAC5C,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACpF,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SACpF,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,iCAAY,CAAC,wBAAwB,EAAE;YAC5D,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE;YAC/C,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC;YACvF,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;SACpF,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,+DAAuB,CAAC,IAAI,EAAE;YACnD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,sCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;YACzE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,sCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS;YACzE,OAAO,EAAE,CAAC,IAAyB,EAAE,EAAE;gBACnC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,+DAAuB,CAAC,MAAM,EAAE;YACrD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,sCAAqB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;YACxE,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,sCAAqB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS;YACxE,OAAO,EAAE,CAAC,IAAyB,EAAE,EAAE;gBACnC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC9B,CAAC;SACJ,CAAC,CAAC;QACH,QAAQ,CAAC,eAAe,CAAC,+DAAuB,CAAC,KAAK,EAAE;YACpD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,+BAAc,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC9F,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,IAAA,+BAAc,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC9F,OAAO,EAAE,KAAK,EAAE,IAAkB,EAAE,EAAE;gBAClC,IAAI,CAAC;oBACD,yCAAyC;oBACzC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;oBACpD,IAAI,CAAC,OAAO,EAAE,CAAC;wBACX,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,6BAA6B,CAAC,CAAC,CAAC;wBACnH,OAAO;oBACX,CAAC;oBAED,iDAAiD;oBACjD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBAC9F,IAAI,CAAC,OAAO,EAAE,CAAC;wBACX,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,6BAA6B,CAAC,CAAC,CAAC;wBACnH,OAAO;oBACX,CAAC;oBAED,qDAAqD;oBACrD,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;oBACtD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,yBAAyB,CAAC,CAAC,CAAC;gBACzG,CAAC;YACL,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;IAED,oBAAoB,CAAC,QAA+B;QAChD,MAAM,wBAAwB,GAAG,IAAI,cAAO,EAAQ,CAAC;QACrD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAC,CAAC;QAE1E,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,iCAAY,CAAC,qBAAqB,CAAC,EAAE;YACzC,OAAO,EAAE,iCAAY,CAAC,qBAAqB,CAAC,EAAE;YAC9C,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,eAAe,CAAC;YACxE,WAAW,EAAE,wBAAwB,CAAC,KAAK;YAC3C,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,iCAAY,CAAC,wBAAwB,CAAC,EAAE;YAC5C,OAAO,EAAE,iCAAY,CAAC,wBAAwB,CAAC,EAAE;YACjD,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,mCAAmC,EAAE,kBAAkB,CAAC;YAC9E,WAAW,EAAE,wBAAwB,CAAC,KAAK;YAC3C,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,oDAA+B,CAAC,EAAE;YACtC,OAAO,EAAE,oDAA+B,CAAC,EAAE;YAC3C,OAAO,EAAE,oDAA+B,CAAC,KAAK;YAC9C,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC/E,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,+CAA0B,CAAC,EAAE;YACjC,OAAO,EAAE,+CAA0B,CAAC,EAAE;YACtC,OAAO,EAAE,+CAA0B,CAAC,KAAK;YACzC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC/E,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,YAAY,GAAG,kCAAwB,CAAC,EAAE;YAC9C,OAAO,EAAE,kCAAwB,CAAC,EAAE;YACpC,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,kBAAkB,CAAC;YACnF,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAC/E,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,MAAM,oCAAoC,GAAG,IAAI,cAAO,EAAQ,CAAC;QACjE,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,oCAAoC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvF,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,oCAAoC,CAAC,IAAI,EAAE,CAAC,CAAC;QACvH,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,oCAAoC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,oCAAoC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5F,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,YAAY,GAAG,iCAAY,CAAC,iCAAiC,CAAC,EAAE;YACpE,OAAO,EAAE,iCAAY,CAAC,iCAAiC,CAAC,EAAE;YAC1D,WAAW,EAAE,oCAAoC,CAAC,KAAK;YACvD,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;QACH,QAAQ,CAAC,YAAY,CAAC;YAClB,EAAE,EAAE,YAAY,GAAG,iCAAY,CAAC,wCAAwC,CAAC,EAAE;YAC3E,OAAO,EAAE,iCAAY,CAAC,wCAAwC,CAAC,EAAE;YACjE,WAAW,EAAE,oCAAoC,CAAC,KAAK;YACvD,IAAI,EAAE,+BAAqB;SAC9B,CAAC,CAAC;IACP,CAAC;IAES,KAAK,CAAC,UAAU,CAAC,SAAkB;QACzC,IAAI,eAAe,GAAG,SAAS,CAAC;QAEhC,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC5C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACrB,OAAO;YACX,CAAC;YACD,eAAe,GAAG,IAAI,CAAC,EAAE,CAAC;QAC9B,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,eAAgB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAES,KAAK,CAAC,iBAAiB;QAC7B,MAAM,QAAQ,GAAG,KAAK,IAA8B,EAAE;YAClD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE;iBAChD,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;iBAChC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACb,OAAO;gBACP,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;aAC5E,CAAC,CAAC,CAAC;YAER,oEAAoE;YACpE,IAAI,iBAAiB,GAAmH,EAAE,CAAC;YAC3I,IAAI,CAAC;gBACD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;gBACrE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjE,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;qBAC5C,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;qBACtD,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACd,QAAQ;oBACR,QAAQ,EAAE,KAAK;oBACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ;iBAC9B,CAAC,CAAC,CAAC;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iEAAiE,EAAE,KAAK,CAAC,CAAC;gBAC5F,qCAAqC;YACzC,CAAC;YAED,oDAAoD;YACpD,MAAM,WAAW,GAAG;gBAChB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACxB,QAAQ,EAAE,IAAI;oBACd,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;oBAChB,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,KAAM;oBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,gBAAgB,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI;iBACtE,CAAC,CAAC;gBACH,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC3B,QAAQ,EAAE,KAAK;oBACf,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS;oBACxB,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK;oBACvB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,gBAAgB,EAAE,SAAS;iBAC9B,CAAC,CAAC;aACN,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;YAE1C,OAAO,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAC7B,+DAA+D;gBAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnD,MAAM,KAAK,GAAG,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;gBAExC,OAAsB,CAAC;oBACnB,KAAK;oBACL,WAAW,EAAE,IAAA,+BAAa,EAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC;oBACnD,MAAM,EAAE,OAAO,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAG,CAAC,QAAQ,CAAC,mCAAmC,EAAE,sCAAsC,CAAC,CAAC;oBAC9J,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,OAAO,EAAE,CAAC,oBAAkB,CAAC,kBAAkB,EAAE,oBAAkB,CAAC,kBAAkB,CAAC;iBAC1F,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,uBAAQ,EAA6B,CAAC;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,CAAC;QAC3D,SAAS,CAAC,WAAW,GAAG,UAAG,CAAC,QAAQ,CAAC,6BAA6B,EAAE,aAAa,CAAC,CAAC;QACnF,SAAS,CAAC,aAAa,GAAG,KAAK,CAAC;QAChC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;QACtB,SAAS,CAAC,IAAI,EAAE,CAAC;QAEjB,4BAA4B;QAC5B,QAAQ,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACpB,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;YACxB,SAAS,CAAC,IAAI,GAAG,KAAK,CAAC;QAC3B,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;YACzD,SAAS,CAAC,IAAI,GAAG,KAAK,CAAC;YACvB,SAAS,CAAC,WAAW,GAAG,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,8BAA8B,CAAC,CAAC;QAC/G,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,sBAAsB,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;YAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAkB,CAAC,kBAAkB,EAAE,CAAC;gBAC3D,SAAS,CAAC,IAAI,EAAE,CAAC;gBACjB,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,OAAO,CAAC,MAAM,KAAK,oBAAkB,CAAC,kBAAkB,EAAE,CAAC;gBAClE,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;gBAC3C,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;gBAC/B,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;gBACxB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACrB,SAAS,CAAC,IAAI,EAAE,CAAC;gBACrB,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,EAAE;YAC7B,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,YAAY,EAAE,CAAC;gBACf,wCAAwC;gBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,YAAY,CAAC,EAAG,CAAC,CAAC;gBAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;oBACX,IAAI,CAAC;wBACD,MAAM,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAG,CAAC,CAAC;wBAC7D,mDAAmD;wBACnD,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAClC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;wBAC3D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,CAAC,QAAQ,CAAC,yCAAyC,EAAE,gCAAgC,CAAC,CAAC,CAAC;wBACrH,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBACzB,SAAS,CAAC,IAAI,EAAE,CAAC;wBACjB,OAAO;oBACX,CAAC;gBACL,CAAC;YACL,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC5B,SAAS,CAAC,IAAI,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;QAEpD,OAAO,KAAK,CAAC,OAAO,CAAC;IACzB,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,SAAiB;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;YAC5C,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,iBAAiB,CAAC;SACjF,CAAC,CAAC;QACH,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,OAAO,GAAG,KAAK;QAC5D,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,SAAS,GAAG,MAAM,IAAI,uBAAa,CAAC;gBACtC,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,6BAA6B,EAAE,aAAa,CAAC;gBACjE,GAAG,EAAE,UAAG,CAAC,iBAAiB,CAAC,4CAA4C,CAAC;aAC3E,CAAC,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,OAAO;YACX,CAAC;QACL,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAC1D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC9B,IAAI,aAAa,IAAI,aAAa,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;gBAClD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,2BAAiB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7E,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YAC1D,IAAI,CAAC,cAAc,CAAC,KAAK,CACrB,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,+BAA+B,CAAC,CAC1F,CAAC;QACN,CAAC;IACL,CAAC;IAES,UAAU,CAChB,SAA6B,IAAI,CAAC,YAAY,EAAE,EAChD,YAAiD,GAAG,EAAE,CAAC,IAAI;QAE3D,OAAO,MAAM,YAAY,iCAAc,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACxE,CAAC;IAES,eAAe,CAAC,QAAwB;QAC9C,IAAI,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IAED,kBAAkB,CAAC,QAAwB;QACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACrC,CAAC;IAES,KAAK,CAAC,sBAAsB;QAClC,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAC1D,IAAI,CAAC,aAAa,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;YAChE,OAAO,CAAC,IAAI,CAAC,kCAAkC,EAAE,GAAG,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EACrF,6FAA6F,CAAC,CAAC,CAAC;YACpG,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH;;;;OAIG;IACO,KAAK,CAAC,WAAW,CAAC,cAAuB;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,2BAA2B,CAAC,CAAC,CAAC;YAC9G,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAoB,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChD,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE;YAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,EAAE,EAAE,KAAK,CAAC,EAAE;SACf,CAAC,CAAC,CAAC;QAEJ,IAAI,WAAW,GAA8B,SAAS,CAAC;QACvD,IAAI,cAAc,EAAE,CAAC;YACjB,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,cAAc,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE;YAC/D,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EAAE,qCAAqC,CAAC;YACpH,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAG,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,4BAA4B;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;QAClD,MAAM,eAAe,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEzD,wDAAwD;QACxD,MAAM,KAAK,GAAoB,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YAClD,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,CAAC;YACzD,OAAO;gBACH,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,KAAK,UAAG,CAAC,QAAQ,CAAC,+DAA+D,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK;gBAC5J,WAAW,EAAE,OAAO,CAAC,EAAE;gBACvB,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,+DAA+D;gBAC/D,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE;aACrG,CAAC;QACN,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAS,CAAC,aAAa,CAAC,CAAC,CAAC,QAAS,CAAC,CAAC,CAAC;QAE1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE;YAC/D,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,wDAAwD,EAAE,iCAAiC,CAAC;SACzH,CAAC,CAAC;QAEH,OAAO,QAAQ,EAAE,EAAE,CAAC;IACxB,CAAC;IAED;;;OAGG;IACO,yBAAyB;QAC/B,mCAAmC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;QACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,mBAAmB;QACjE,sDAAsD;QACtD,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAChC,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;YACvD,CAAC;QACL,CAAC;QAED,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE1F,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChF,IAAI,eAAmC,CAAC;QAExC,IAAI,eAAe,EAAE,CAAC;YAClB,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACtD,CAAC;QAED,8DAA8D;QAC9D,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACtC,IAAI,SAAS,EAAE,CAAC;gBACZ,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;IACtE,CAAC;;AAnmBQ,gDAAkB;AAIR;IADlB,IAAA,kBAAM,EAAC,qBAAW,CAAC;;uDACwB;AAEzB;IADlB,IAAA,kBAAM,EAAC,wBAAiB,CAAC;;6DAC8B;AAErC;IADlB,IAAA,kBAAM,EAAC,yCAAkB,CAAC;sCACY,yCAAkB;8DAAC;AAEvC;IADlB,IAAA,kBAAM,EAAC,qBAAc,CAAC;sCACY,qBAAc;0DAAC;AAE/B;IADlB,IAAA,kBAAM,EAAC,qCAAgB,CAAC;;4DAC6B;AAEnC;IADlB,IAAA,kBAAM,EAAC,8BAAa,CAAC;sCACY,8BAAa;yDAAC;AAE7B;IADlB,IAAA,kBAAM,EAAC,6BAAmB,CAAC;;6DAC8B;AAEvC;IADlB,IAAA,kBAAM,EAAC,gBAAO,CAAC;IAAE,IAAA,iBAAK,EAAC,oBAAoB,CAAC;;kDACV;AAEhB;IADlB,IAAA,kBAAM,EAAC,wBAAiB,CAAC;;6DAC8B;AAkBrC;IADlB,IAAA,kBAAM,EAAC,oDAAuB,CAAC;sCACM,oDAAuB;6DAAC;AAG3C;IADlB,IAAA,kBAAM,EAAC,iDAAsB,CAAC;sCACY,iDAAsB;kEAAC;AAgBlE;IADC,IAAA,yBAAa,GAAE;;;;oDAmBf;6BA3EQ,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;;GACA,kBAAkB,CAomB9B"}
|
|
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":"AAgBA,OAAO,mCAAmC,CAAC;AAC3C,OAAO,iDAAiD,CAAC;AAIzD,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;;AAoD3E,
|
|
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;AAC3C,OAAO,iDAAiD,CAAC;AAIzD,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;;AAoD3E,wBAgJG"}
|
|
@@ -23,7 +23,6 @@ const tab_bar_toolbar_1 = require("@theia/core/lib/browser/shell/tab-bar-toolbar
|
|
|
23
23
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
24
24
|
const editor_manager_1 = require("@theia/editor/lib/browser/editor-manager");
|
|
25
25
|
const ai_chat_ui_contribution_1 = require("./ai-chat-ui-contribution");
|
|
26
|
-
const ai_chat_navigation_service_1 = require("./ai-chat-navigation-service");
|
|
27
26
|
const chat_input_widget_1 = require("./chat-input-widget");
|
|
28
27
|
const chat_node_toolbar_action_contribution_1 = require("./chat-node-toolbar-action-contribution");
|
|
29
28
|
const chat_response_part_renderer_1 = require("./chat-response-part-renderer");
|
|
@@ -52,9 +51,9 @@ const chat_focus_contribution_1 = require("./chat-focus-contribution");
|
|
|
52
51
|
const chat_capabilities_service_1 = require("./chat-capabilities-service");
|
|
53
52
|
const chat_input_capabilities_contribution_1 = require("./chat-input-capabilities-contribution");
|
|
54
53
|
const generic_capabilities_service_1 = require("./generic-capabilities-service");
|
|
54
|
+
const tool_confirmation_keybinding_contribution_1 = require("./tool-confirmation-keybinding-contribution");
|
|
55
55
|
exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebind) => {
|
|
56
56
|
(0, chat_view_preferences_1.bindChatViewPreferences)(bind);
|
|
57
|
-
bind(ai_chat_navigation_service_1.AIChatNavigationService).toSelf().inSingletonScope();
|
|
58
57
|
(0, browser_1.bindViewContribution)(bind, ai_chat_ui_contribution_1.AIChatContribution);
|
|
59
58
|
bind(browser_1.FrontendApplicationContribution).toService(ai_chat_ui_contribution_1.AIChatContribution);
|
|
60
59
|
bind(tab_bar_toolbar_1.TabBarToolbarContribution).toService(ai_chat_ui_contribution_1.AIChatContribution);
|
|
@@ -80,6 +79,9 @@ exports.default = new inversify_1.ContainerModule((bind, _unbind, _isBound, rebi
|
|
|
80
79
|
bind(chat_input_capabilities_contribution_1.ChatInputCapabilitiesContribution).toSelf().inSingletonScope();
|
|
81
80
|
bind(core_1.CommandContribution).toService(chat_input_capabilities_contribution_1.ChatInputCapabilitiesContribution);
|
|
82
81
|
bind(browser_1.KeybindingContribution).toService(chat_input_capabilities_contribution_1.ChatInputCapabilitiesContribution);
|
|
82
|
+
bind(tool_confirmation_keybinding_contribution_1.ToolConfirmationKeybindingContribution).toSelf().inSingletonScope();
|
|
83
|
+
bind(core_1.CommandContribution).toService(tool_confirmation_keybinding_contribution_1.ToolConfirmationKeybindingContribution);
|
|
84
|
+
bind(browser_1.KeybindingContribution).toService(tool_confirmation_keybinding_contribution_1.ToolConfirmationKeybindingContribution);
|
|
83
85
|
(0, core_1.bindRootContributionProvider)(bind, chat_response_part_renderer_1.ChatResponsePartRenderer);
|
|
84
86
|
(0, core_1.bindRootContributionProvider)(bind, chat_tree_view_1.ChatWelcomeMessageProvider);
|
|
85
87
|
bindChatViewWidget(bind);
|