@theia/ai-chat-ui 1.76.0-next.7 → 1.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-chat-ui-frontend-module.js +6 -0
- package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
- package/lib/browser/chat-find/chat-find-contribution.d.ts +18 -0
- package/lib/browser/chat-find/chat-find-contribution.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-contribution.js +76 -0
- package/lib/browser/chat-find/chat-find-contribution.js.map +1 -0
- package/lib/browser/chat-find/chat-find-highlighter.d.ts +114 -0
- package/lib/browser/chat-find/chat-find-highlighter.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-highlighter.js +353 -0
- package/lib/browser/chat-find/chat-find-highlighter.js.map +1 -0
- package/lib/browser/chat-find/chat-find-highlighter.spec.d.ts +2 -0
- package/lib/browser/chat-find/chat-find-highlighter.spec.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-highlighter.spec.js +283 -0
- package/lib/browser/chat-find/chat-find-highlighter.spec.js.map +1 -0
- package/lib/browser/chat-find/chat-find-matcher.d.ts +72 -0
- package/lib/browser/chat-find/chat-find-matcher.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-matcher.js +168 -0
- package/lib/browser/chat-find/chat-find-matcher.js.map +1 -0
- package/lib/browser/chat-find/chat-find-matcher.spec.d.ts +2 -0
- package/lib/browser/chat-find/chat-find-matcher.spec.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-matcher.spec.js +145 -0
- package/lib/browser/chat-find/chat-find-matcher.spec.js.map +1 -0
- package/lib/browser/chat-find/chat-find-text.d.ts +20 -0
- package/lib/browser/chat-find/chat-find-text.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-text.js +56 -0
- package/lib/browser/chat-find/chat-find-text.js.map +1 -0
- package/lib/browser/chat-find/chat-find-widget.d.ts +96 -0
- package/lib/browser/chat-find/chat-find-widget.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-widget.js +332 -0
- package/lib/browser/chat-find/chat-find-widget.js.map +1 -0
- package/lib/browser/chat-find/chat-find-widget.spec.d.ts +2 -0
- package/lib/browser/chat-find/chat-find-widget.spec.d.ts.map +1 -0
- package/lib/browser/chat-find/chat-find-widget.spec.js +236 -0
- package/lib/browser/chat-find/chat-find-widget.spec.js.map +1 -0
- package/lib/browser/chat-input-scroll-util.d.ts +7 -0
- package/lib/browser/chat-input-scroll-util.d.ts.map +1 -0
- package/lib/browser/chat-input-scroll-util.js +33 -0
- package/lib/browser/chat-input-scroll-util.js.map +1 -0
- package/lib/browser/chat-input-scroll-util.spec.d.ts +2 -0
- package/lib/browser/chat-input-scroll-util.spec.d.ts.map +1 -0
- package/lib/browser/chat-input-scroll-util.spec.js +38 -0
- package/lib/browser/chat-input-scroll-util.spec.js.map +1 -0
- package/lib/browser/chat-input-widget.d.ts +21 -3
- package/lib/browser/chat-input-widget.d.ts.map +1 -1
- package/lib/browser/chat-input-widget.js +109 -50
- package/lib/browser/chat-input-widget.js.map +1 -1
- package/lib/browser/chat-input-widget.spec.js +21 -0
- package/lib/browser/chat-input-widget.spec.js.map +1 -1
- package/lib/browser/chat-response-renderer/code-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/code-part-renderer.js +9 -1
- package/lib/browser/chat-response-renderer/code-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/code-wrapper-editors.d.ts +13 -0
- package/lib/browser/chat-response-renderer/code-wrapper-editors.d.ts.map +1 -0
- package/lib/browser/chat-response-renderer/code-wrapper-editors.js +41 -0
- package/lib/browser/chat-response-renderer/code-wrapper-editors.js.map +1 -0
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.js +74 -43
- package/lib/browser/chat-response-renderer/delegation-tool-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/index.d.ts +1 -0
- package/lib/browser/chat-response-renderer/index.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/index.js +1 -0
- package/lib/browser/chat-response-renderer/index.js.map +1 -1
- package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +9 -0
- package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/markdown-part-renderer.js +34 -16
- package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.js +2 -2
- package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/spinner.d.ts +3 -0
- package/lib/browser/chat-response-renderer/spinner.d.ts.map +1 -0
- package/lib/browser/chat-response-renderer/spinner.js +24 -0
- package/lib/browser/chat-response-renderer/spinner.js.map +1 -0
- package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts +9 -1
- package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/thinking-part-renderer.js +93 -2
- package/lib/browser/chat-response-renderer/thinking-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.d.ts +2 -0
- package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.d.ts.map +1 -0
- package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.js +84 -0
- package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.js.map +1 -0
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +2 -2
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js +16 -0
- package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-utils.d.ts.map +1 -1
- package/lib/browser/chat-response-renderer/toolcall-utils.js +7 -2
- package/lib/browser/chat-response-renderer/toolcall-utils.js.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-container.js +4 -0
- package/lib/browser/chat-tree-view/chat-view-tree-container.js.map +1 -1
- package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +20 -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 +88 -7
- package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
- package/lib/common/toolcall-utils.d.ts +11 -1
- package/lib/common/toolcall-utils.d.ts.map +1 -1
- package/lib/common/toolcall-utils.js +191 -9
- package/lib/common/toolcall-utils.js.map +1 -1
- package/lib/common/toolcall-utils.spec.js +92 -4
- package/lib/common/toolcall-utils.spec.js.map +1 -1
- package/package.json +13 -13
- package/src/browser/ai-chat-ui-frontend-module.ts +7 -0
- package/src/browser/chat-find/chat-find-contribution.ts +74 -0
- package/src/browser/chat-find/chat-find-highlighter.spec.ts +313 -0
- package/src/browser/chat-find/chat-find-highlighter.ts +385 -0
- package/src/browser/chat-find/chat-find-matcher.spec.ts +173 -0
- package/src/browser/chat-find/chat-find-matcher.ts +197 -0
- package/src/browser/chat-find/chat-find-text.ts +65 -0
- package/src/browser/chat-find/chat-find-widget.spec.tsx +261 -0
- package/src/browser/chat-find/chat-find-widget.tsx +418 -0
- package/src/browser/chat-input-scroll-util.spec.ts +42 -0
- package/src/browser/chat-input-scroll-util.ts +30 -0
- package/src/browser/chat-input-widget.spec.ts +29 -0
- package/src/browser/chat-input-widget.tsx +118 -56
- package/src/browser/chat-response-renderer/code-part-renderer.tsx +9 -1
- package/src/browser/chat-response-renderer/code-wrapper-editors.ts +41 -0
- package/src/browser/chat-response-renderer/delegation-tool-renderer.tsx +88 -62
- package/src/browser/chat-response-renderer/index.ts +1 -0
- package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +34 -17
- package/src/browser/chat-response-renderer/server-toolcall-part-renderer.tsx +2 -5
- package/src/browser/chat-response-renderer/spinner.tsx +22 -0
- package/src/browser/chat-response-renderer/thinking-part-renderer.spec.tsx +104 -0
- package/src/browser/chat-response-renderer/thinking-part-renderer.tsx +129 -9
- package/src/browser/chat-response-renderer/toolcall-part-renderer.spec.ts +16 -0
- package/src/browser/chat-response-renderer/toolcall-part-renderer.tsx +1 -4
- package/src/browser/chat-response-renderer/toolcall-utils.ts +5 -0
- package/src/browser/chat-tree-view/chat-view-tree-container.ts +4 -0
- package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +99 -6
- package/src/browser/style/chat-find.css +107 -0
- package/src/browser/style/index.css +75 -8
- package/src/common/toolcall-utils.spec.ts +113 -4
- package/src/common/toolcall-utils.ts +207 -9
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 Safi Seid-Ahmad, K2view and others.
|
|
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.computeRevealScrollDelta = computeRevealScrollDelta;
|
|
19
|
+
/**
|
|
20
|
+
* Computes how far a scroll container must scroll so that the vertical range `[rowTop, rowBottom]`,
|
|
21
|
+
* given in pixels relative to the top edge of the container's visible area, becomes fully visible.
|
|
22
|
+
* Negative values scroll up, positive values scroll down, `0` means the range is already visible.
|
|
23
|
+
*/
|
|
24
|
+
function computeRevealScrollDelta(rowTop, rowBottom, viewportHeight) {
|
|
25
|
+
if (rowTop < 0) {
|
|
26
|
+
return rowTop;
|
|
27
|
+
}
|
|
28
|
+
if (rowBottom > viewportHeight) {
|
|
29
|
+
return rowBottom - viewportHeight;
|
|
30
|
+
}
|
|
31
|
+
return 0;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=chat-input-scroll-util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-input-scroll-util.js","sourceRoot":"","sources":["../../src/browser/chat-input-scroll-util.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yDAAyD;AACzD,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;;AAOhF,4DAQC;AAbD;;;;GAIG;AACH,SAAgB,wBAAwB,CAAC,MAAc,EAAE,SAAiB,EAAE,cAAsB;IAC9F,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACb,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,IAAI,SAAS,GAAG,cAAc,EAAE,CAAC;QAC7B,OAAO,SAAS,GAAG,cAAc,CAAC;IACtC,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-input-scroll-util.spec.d.ts","sourceRoot":"","sources":["../../src/browser/chat-input-scroll-util.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 Safi Seid-Ahmad, K2view and others.
|
|
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
|
+
const chai_1 = require("chai");
|
|
19
|
+
const chat_input_scroll_util_1 = require("./chat-input-scroll-util");
|
|
20
|
+
describe('computeRevealScrollDelta', () => {
|
|
21
|
+
const viewportHeight = 240;
|
|
22
|
+
it('returns 0 when the row is fully visible', () => {
|
|
23
|
+
(0, chai_1.expect)((0, chat_input_scroll_util_1.computeRevealScrollDelta)(100, 120, viewportHeight)).to.equal(0);
|
|
24
|
+
});
|
|
25
|
+
it('returns 0 when the row touches the bottom edge', () => {
|
|
26
|
+
(0, chai_1.expect)((0, chat_input_scroll_util_1.computeRevealScrollDelta)(220, 240, viewportHeight)).to.equal(0);
|
|
27
|
+
});
|
|
28
|
+
it('scrolls up by the overshoot when the row is above the viewport', () => {
|
|
29
|
+
(0, chai_1.expect)((0, chat_input_scroll_util_1.computeRevealScrollDelta)(-346, -326, viewportHeight)).to.equal(-346);
|
|
30
|
+
});
|
|
31
|
+
it('scrolls down by the overshoot when the row is below the viewport', () => {
|
|
32
|
+
(0, chai_1.expect)((0, chat_input_scroll_util_1.computeRevealScrollDelta)(560, 580, viewportHeight)).to.equal(340);
|
|
33
|
+
});
|
|
34
|
+
it('scrolls down when the row is only partially below the viewport', () => {
|
|
35
|
+
(0, chai_1.expect)((0, chat_input_scroll_util_1.computeRevealScrollDelta)(230, 250, viewportHeight)).to.equal(10);
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
//# sourceMappingURL=chat-input-scroll-util.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-input-scroll-util.spec.js","sourceRoot":"","sources":["../../src/browser/chat-input-scroll-util.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yDAAyD;AACzD,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,+BAA8B;AAC9B,qEAAoE;AAEpE,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACtC,MAAM,cAAc,GAAG,GAAG,CAAC;IAE3B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAC/C,IAAA,aAAM,EAAC,IAAA,iDAAwB,EAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACtD,IAAA,aAAM,EAAC,IAAA,iDAAwB,EAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACtE,IAAA,aAAM,EAAC,IAAA,iDAAwB,EAAC,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QACxE,IAAA,aAAM,EAAC,IAAA,iDAAwB,EAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACtE,IAAA,aAAM,EAAC,IAAA,iDAAwB,EAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -4,8 +4,8 @@ import { ParsedChatRequest } from '@theia/ai-chat/lib/common/parsed-chat-request
|
|
|
4
4
|
import { GenericCapabilitySelections, AIVariableResolutionRequest, ParsedCapability, FrontendLanguageModelRegistry, LanguageModel, ReasoningLevel, ReasoningSettings, ReasoningSupport, ServerToolDescriptor } from '@theia/ai-core';
|
|
5
5
|
import { ChangeSetDecoratorService } from '@theia/ai-chat/lib/browser/change-set-decorator-service';
|
|
6
6
|
import { ImageContextVariable } from '@theia/ai-chat/lib/common/image-context-variable';
|
|
7
|
-
import {
|
|
8
|
-
import { AISettingsService, PromptService } from '@theia/ai-core/lib/common';
|
|
7
|
+
import { AIActivationService, FavoriteModelsService, FrontendVariableService } from '@theia/ai-core/lib/browser';
|
|
8
|
+
import { AISettingsService, LanguageModelAliasRegistry, PromptService } from '@theia/ai-core/lib/common';
|
|
9
9
|
import { CommandService, DisposableCollection, Emitter, InMemoryResources, MessageService, URI, Disposable, ILogger } from '@theia/core';
|
|
10
10
|
import { ContextMenuRenderer, HoverService, LabelProvider, Message, OpenerService, ReactWidget } from '@theia/core/lib/browser';
|
|
11
11
|
import { ContextKey, ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
@@ -70,6 +70,8 @@ export declare class AIChatInputWidget extends ReactWidget {
|
|
|
70
70
|
protected readonly aiSettingsService: AISettingsService;
|
|
71
71
|
protected readonly promptService: PromptService;
|
|
72
72
|
protected readonly languageModelRegistry: FrontendLanguageModelRegistry;
|
|
73
|
+
protected readonly favoriteModels: FavoriteModelsService;
|
|
74
|
+
protected readonly aliasRegistry: LanguageModelAliasRegistry;
|
|
73
75
|
protected readonly preferenceService: PreferenceService | undefined;
|
|
74
76
|
protected readonly messageService: MessageService;
|
|
75
77
|
protected readonly commandService: CommandService;
|
|
@@ -110,7 +112,8 @@ export declare class AIChatInputWidget extends ReactWidget {
|
|
|
110
112
|
* Resolves the reasoning level to display in the selector. Priority: session override →
|
|
111
113
|
* persisted per-agent selection (from {@link AISettingsService}) →
|
|
112
114
|
* `ai-features.reasoning.defaults` preference entry matching the current model/agent →
|
|
113
|
-
* model's declared default → `'off'`.
|
|
115
|
+
* model's declared default → `'off'`. The result is clamped to the model's supported levels, matching
|
|
116
|
+
* what the frontend language model service sends.
|
|
114
117
|
*/
|
|
115
118
|
protected getCurrentReasoningLevel(): ReasoningLevel | undefined;
|
|
116
119
|
protected resolvePreferenceReasoningLevel(): ReasoningLevel | undefined;
|
|
@@ -148,8 +151,21 @@ export declare class AIChatInputWidget extends ReactWidget {
|
|
|
148
151
|
protected updateResolvedDefaultModel(): Promise<void>;
|
|
149
152
|
/** The per-session model override id for the active session, if any. */
|
|
150
153
|
protected getSessionModelOverride(): string | undefined;
|
|
154
|
+
/**
|
|
155
|
+
* Opens the Models page of the AI Configuration view, which is where the models this list shows are
|
|
156
|
+
* chosen. The target is the id of that view's Models category (`AiConfigurationCategoryId.MODELS`),
|
|
157
|
+
* passed as a string because this package does not depend on the package that declares it.
|
|
158
|
+
*/
|
|
159
|
+
protected openModelConfiguration: () => void;
|
|
151
160
|
/** Sets (or clears, with `undefined`) the per-session model override for the active session. */
|
|
152
161
|
protected handleSessionModelChange: (modelId: string | undefined) => void;
|
|
162
|
+
/**
|
|
163
|
+
* The models the selector offers: the favorites, i.e. the newest models of each provider plus
|
|
164
|
+
* whatever the user starred, and the session's own model even when it is neither. Discovery
|
|
165
|
+
* registers every release a provider offers, which is a list far too long to pick from here; the
|
|
166
|
+
* provider's page in the AI Configuration view is where the rest can be browsed and starred.
|
|
167
|
+
*/
|
|
168
|
+
protected getSelectableModels(currentModelId: string | undefined): LanguageModel[];
|
|
153
169
|
/** Builds the props for the per-session model selector. */
|
|
154
170
|
protected getModelSelectorProps(): ModelSelectorWidgetProps;
|
|
155
171
|
protected updateAvailableGenericCapabilities(): Promise<void>;
|
|
@@ -396,6 +412,8 @@ interface ModelSelectorWidgetProps {
|
|
|
396
412
|
defaultLabel: string;
|
|
397
413
|
/** Set the session override (or clear it with `undefined`). */
|
|
398
414
|
onModelChange: (modelId: string | undefined) => void;
|
|
415
|
+
/** Opens the page that decides which models this list shows. */
|
|
416
|
+
onConfigure: () => void;
|
|
399
417
|
}
|
|
400
418
|
export {};
|
|
401
419
|
//# sourceMappingURL=chat-input-widget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-input-widget.d.ts","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-input-widget.d.ts","sourceRoot":"","sources":["../../src/browser/chat-input-widget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -35,10 +35,10 @@ const keybinding_1 = require("@theia/core/lib/browser/keybinding");
|
|
|
35
35
|
const promise_util_1 = require("@theia/core/lib/common/promise-util");
|
|
36
36
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
37
37
|
const React = require("@theia/core/shared/react");
|
|
38
|
-
const monaco_editor_core_1 = require("@theia/monaco-editor-core");
|
|
39
38
|
const monaco_editor_provider_1 = require("@theia/monaco/lib/browser/monaco-editor-provider");
|
|
40
39
|
const change_set_action_service_1 = require("./change-set-actions/change-set-action-service");
|
|
41
40
|
const chat_input_agent_suggestions_1 = require("./chat-input-agent-suggestions");
|
|
41
|
+
const chat_input_scroll_util_1 = require("./chat-input-scroll-util");
|
|
42
42
|
const chat_view_language_contribution_1 = require("./chat-view-language-contribution");
|
|
43
43
|
const context_variable_picker_1 = require("./context-variable-picker");
|
|
44
44
|
const task_context_variable_1 = require("@theia/ai-chat/lib/browser/task-context-variable");
|
|
@@ -55,6 +55,12 @@ const preferences_1 = require("@theia/core/lib/common/preferences");
|
|
|
55
55
|
const chat_view_preferences_1 = require("./chat-view-preferences");
|
|
56
56
|
const chat_token_usage_indicator_util_1 = require("./chat-token-usage-indicator-util");
|
|
57
57
|
const chat_view_commands_1 = require("./chat-view-commands");
|
|
58
|
+
/**
|
|
59
|
+
* Id of the Models category of the AI Configuration view (`AiConfigurationCategoryId.MODELS`), used to
|
|
60
|
+
* open it from the model selector. Not imported: that id is declared in `@theia/ai-core-ui`, which this
|
|
61
|
+
* package does not depend on.
|
|
62
|
+
*/
|
|
63
|
+
const AI_CONFIGURATION_MODELS_CATEGORY_ID = 'models';
|
|
58
64
|
exports.AIChatInputConfiguration = Symbol('AIChatInputConfiguration');
|
|
59
65
|
let AIChatInputWidget = class AIChatInputWidget extends browser_2.ReactWidget {
|
|
60
66
|
constructor() {
|
|
@@ -142,6 +148,16 @@ let AIChatInputWidget = class AIChatInputWidget extends browser_2.ReactWidget {
|
|
|
142
148
|
};
|
|
143
149
|
/** Language models available for the per-session model selector; refreshed on registry changes. */
|
|
144
150
|
this.availableModels = [];
|
|
151
|
+
/**
|
|
152
|
+
* Opens the Models page of the AI Configuration view, which is where the models this list shows are
|
|
153
|
+
* chosen. The target is the id of that view's Models category (`AiConfigurationCategoryId.MODELS`),
|
|
154
|
+
* passed as a string because this package does not depend on the package that declares it.
|
|
155
|
+
*/
|
|
156
|
+
this.openModelConfiguration = () => {
|
|
157
|
+
this.commandService.executeCommand(browser_1.AI_SHOW_SETTINGS_COMMAND.id, AI_CONFIGURATION_MODELS_CATEGORY_ID).catch(error => {
|
|
158
|
+
this.logger.error(`Failed to execute '${browser_1.AI_SHOW_SETTINGS_COMMAND.id}' from the model selector`, error);
|
|
159
|
+
});
|
|
160
|
+
};
|
|
145
161
|
/** Sets (or clears, with `undefined`) the per-session model override for the active session. */
|
|
146
162
|
this.handleSessionModelChange = (modelId) => {
|
|
147
163
|
const session = this.chatService.getSessions().find(s => s.model.id === this._chatModel?.id);
|
|
@@ -267,21 +283,20 @@ let AIChatInputWidget = class AIChatInputWidget extends browser_2.ReactWidget {
|
|
|
267
283
|
* Resolves the reasoning level to display in the selector. Priority: session override →
|
|
268
284
|
* persisted per-agent selection (from {@link AISettingsService}) →
|
|
269
285
|
* `ai-features.reasoning.defaults` preference entry matching the current model/agent →
|
|
270
|
-
* model's declared default → `'off'`.
|
|
286
|
+
* model's declared default → `'off'`. The result is clamped to the model's supported levels, matching
|
|
287
|
+
* what the frontend language model service sends.
|
|
271
288
|
*/
|
|
272
289
|
getCurrentReasoningLevel() {
|
|
273
290
|
if (!this.currentReasoningSupport) {
|
|
274
291
|
return undefined;
|
|
275
292
|
}
|
|
276
293
|
const session = this.chatService.getSessions().find(s => s.model.id === this._chatModel?.id);
|
|
277
|
-
const
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
}
|
|
284
|
-
return this.resolvePreferenceReasoningLevel() ?? this.currentReasoningSupport.defaultLevel ?? 'off';
|
|
294
|
+
const level = session?.model.settings?.commonSettings?.reasoning?.level
|
|
295
|
+
?? this.savedReasoning?.level
|
|
296
|
+
?? this.resolvePreferenceReasoningLevel()
|
|
297
|
+
?? this.currentReasoningSupport.defaultLevel
|
|
298
|
+
?? 'off';
|
|
299
|
+
return ai_core_1.ReasoningSupport.clampLevel(this.currentReasoningSupport, level);
|
|
285
300
|
}
|
|
286
301
|
resolvePreferenceReasoningLevel() {
|
|
287
302
|
if (!this.preferenceService || !this.currentLanguageModelId) {
|
|
@@ -483,16 +498,26 @@ let AIChatInputWidget = class AIChatInputWidget extends browser_2.ReactWidget {
|
|
|
483
498
|
const session = this.chatService.getSessions().find(s => s.model.id === this._chatModel?.id);
|
|
484
499
|
return session?.model.settings?.commonSettings?.modelId;
|
|
485
500
|
}
|
|
501
|
+
/**
|
|
502
|
+
* The models the selector offers: the favorites, i.e. the newest models of each provider plus
|
|
503
|
+
* whatever the user starred, and the session's own model even when it is neither. Discovery
|
|
504
|
+
* registers every release a provider offers, which is a list far too long to pick from here; the
|
|
505
|
+
* provider's page in the AI Configuration view is where the rest can be browsed and starred.
|
|
506
|
+
*/
|
|
507
|
+
getSelectableModels(currentModelId) {
|
|
508
|
+
return this.availableModels.filter(model => this.favoriteModels.isFavorite(model.id) || model.id === currentModelId);
|
|
509
|
+
}
|
|
486
510
|
/** Builds the props for the per-session model selector. */
|
|
487
511
|
getModelSelectorProps() {
|
|
488
512
|
const currentModelId = this.getSessionModelOverride();
|
|
489
513
|
const defaultLabel = this.resolvedDefaultLabel
|
|
490
514
|
?? core_1.nls.localize('theia/ai/chat-ui/agentDefaultModel', 'agent default');
|
|
491
515
|
return {
|
|
492
|
-
models: this.
|
|
516
|
+
models: this.getSelectableModels(currentModelId),
|
|
493
517
|
currentModelId,
|
|
494
518
|
defaultLabel,
|
|
495
519
|
onModelChange: this.handleSessionModelChange,
|
|
520
|
+
onConfigure: this.openModelConfiguration,
|
|
496
521
|
};
|
|
497
522
|
}
|
|
498
523
|
async updateAvailableGenericCapabilities() {
|
|
@@ -864,6 +889,14 @@ let AIChatInputWidget = class AIChatInputWidget extends browser_2.ReactWidget {
|
|
|
864
889
|
this.updateReasoningSupport(this.receivingAgent.agentId);
|
|
865
890
|
}
|
|
866
891
|
}));
|
|
892
|
+
this.toDispose.push(this.favoriteModels.onDidChange(() => this.update()));
|
|
893
|
+
// An agent's default is usually an alias, so editing which model the alias points at changes what
|
|
894
|
+
// "Default" resolves to and with it the model-dependent state. The registry's own change event
|
|
895
|
+
// does not cover this: the models it holds are the same ones, only the alias moved.
|
|
896
|
+
this.toDispose.push(this.aliasRegistry.onDidChange(() => {
|
|
897
|
+
this.updateResolvedDefaultModel();
|
|
898
|
+
this.updateReasoningSupport(this.receivingAgent?.agentId);
|
|
899
|
+
}));
|
|
867
900
|
// When the agent's model is changed in the AI configuration, refresh the selector's resolved
|
|
868
901
|
// default and the model-dependent state (reasoning support, context size, server tools, vendor).
|
|
869
902
|
this.toDispose.push(this.aiSettingsService.onDidChange(() => {
|
|
@@ -1573,6 +1606,14 @@ tslib_1.__decorate([
|
|
|
1573
1606
|
(0, inversify_1.inject)(ai_core_1.FrontendLanguageModelRegistry),
|
|
1574
1607
|
tslib_1.__metadata("design:type", Object)
|
|
1575
1608
|
], AIChatInputWidget.prototype, "languageModelRegistry", void 0);
|
|
1609
|
+
tslib_1.__decorate([
|
|
1610
|
+
(0, inversify_1.inject)(browser_1.FavoriteModelsService),
|
|
1611
|
+
tslib_1.__metadata("design:type", browser_1.FavoriteModelsService)
|
|
1612
|
+
], AIChatInputWidget.prototype, "favoriteModels", void 0);
|
|
1613
|
+
tslib_1.__decorate([
|
|
1614
|
+
(0, inversify_1.inject)(common_1.LanguageModelAliasRegistry),
|
|
1615
|
+
tslib_1.__metadata("design:type", Object)
|
|
1616
|
+
], AIChatInputWidget.prototype, "aliasRegistry", void 0);
|
|
1576
1617
|
tslib_1.__decorate([
|
|
1577
1618
|
(0, inversify_1.inject)(preferences_1.PreferenceService),
|
|
1578
1619
|
(0, inversify_1.optional)(),
|
|
@@ -1709,39 +1750,32 @@ const ChatInput = (props) => {
|
|
|
1709
1750
|
resizeObserver.disconnect();
|
|
1710
1751
|
});
|
|
1711
1752
|
editor.getControl().onContextMenu(e => props.contextMenuCallback(e.event));
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1753
|
+
// The editor is laid out at its full content height and the surrounding container
|
|
1754
|
+
// scrolls, so Monaco cannot reveal the cursor itself. Scroll the container to the
|
|
1755
|
+
// visual row of the cursor; for wrapped lines this differs from the start of the model line.
|
|
1756
|
+
// `getTopForPosition` is content-absolute, so subtract the editor's own scroll offset,
|
|
1757
|
+
// which is non-zero while `automaticLayout` has the editor laid out at a clamped height.
|
|
1758
|
+
const revealCursor = (position) => {
|
|
1759
|
+
const container = editorContainerRef.current;
|
|
1760
|
+
const control = editor.getControl();
|
|
1761
|
+
const editorNode = control.getDomNode();
|
|
1762
|
+
if (!container || !editorNode) {
|
|
1763
|
+
return;
|
|
1764
|
+
}
|
|
1765
|
+
const rowTop = editorNode.getBoundingClientRect().top - container.getBoundingClientRect().top
|
|
1766
|
+
+ control.getTopForPosition(position.lineNumber, position.column) - control.getScrollTop();
|
|
1767
|
+
const rowBottom = rowTop + control.getOption(75 /* EditorOption.lineHeight */);
|
|
1768
|
+
const delta = (0, chat_input_scroll_util_1.computeRevealScrollDelta)(rowTop, rowBottom, container.clientHeight);
|
|
1769
|
+
if (delta !== 0) {
|
|
1770
|
+
container.scrollTop += delta;
|
|
1726
1771
|
}
|
|
1727
|
-
const lineNumbers = model.getAllDecorations().filter(predicate => predicate.options.description?.startsWith('line-number-'));
|
|
1728
|
-
editor.getControl().removeDecorations(lineNumbers.map(d => d.id));
|
|
1729
|
-
editor.getControl().createDecorationsCollection(decorations);
|
|
1730
1772
|
};
|
|
1731
|
-
editor.getControl().
|
|
1732
|
-
updateLineCounts();
|
|
1733
|
-
});
|
|
1734
|
-
editor.getControl().onDidChangeCursorPosition(e => {
|
|
1735
|
-
const lineNumber = e.position.lineNumber;
|
|
1736
|
-
const line = editor.getControl().getDomNode()?.querySelector(`.line-number-${lineNumber}`);
|
|
1737
|
-
line?.scrollIntoView({ behavior: 'instant', block: 'nearest' });
|
|
1738
|
-
});
|
|
1773
|
+
editor.getControl().onDidChangeCursorPosition(e => revealCursor(e.position));
|
|
1739
1774
|
editorRef.current = editor;
|
|
1740
1775
|
props.setEditorRef(editor);
|
|
1741
1776
|
if (props.initialValue) {
|
|
1742
1777
|
setValue(props.initialValue);
|
|
1743
1778
|
}
|
|
1744
|
-
updateLineCounts();
|
|
1745
1779
|
};
|
|
1746
1780
|
createInputElement();
|
|
1747
1781
|
return () => {
|
|
@@ -2018,7 +2052,7 @@ const ChatInputOptions = ({ leftOptions, rightOptions, isEnabled, hoverService,
|
|
|
2018
2052
|
e.preventDefault();
|
|
2019
2053
|
capabilitiesToggle.onToggle();
|
|
2020
2054
|
}
|
|
2021
|
-
}, children: [(0, jsx_runtime_1.jsx)("span", { className: "codicon codicon-tools" }), capabilitiesToggle.hasUnsavedChanges && ((0, jsx_runtime_1.jsx)("span", { className: "theia-capabilities-unsaved-indicator" }))] })), reasoningSelectorProps.show && reasoningSelectorProps.reasoningSupport && ((0, jsx_runtime_1.jsx)(ReasoningSelector, { reasoningSupport: reasoningSelectorProps.reasoningSupport, currentLevel: reasoningSelectorProps.currentLevel, onReasoningChange: reasoningSelectorProps.onReasoningChange, disabled: !isEnabled, hoverService: hoverService })), (modelSelectorProps.models.length > 0 || modelSelectorProps.currentModelId) && ((0, jsx_runtime_1.jsx)(ChatModelSelector, { models: modelSelectorProps.models, currentModelId: modelSelectorProps.currentModelId, defaultLabel: modelSelectorProps.defaultLabel, onModelChange: modelSelectorProps.onModelChange, disabled: !isEnabled, hoverService: hoverService }))] })] }));
|
|
2055
|
+
}, children: [(0, jsx_runtime_1.jsx)("span", { className: "codicon codicon-tools" }), capabilitiesToggle.hasUnsavedChanges && ((0, jsx_runtime_1.jsx)("span", { className: "theia-capabilities-unsaved-indicator" }))] })), reasoningSelectorProps.show && reasoningSelectorProps.reasoningSupport && ((0, jsx_runtime_1.jsx)(ReasoningSelector, { reasoningSupport: reasoningSelectorProps.reasoningSupport, currentLevel: reasoningSelectorProps.currentLevel, onReasoningChange: reasoningSelectorProps.onReasoningChange, disabled: !isEnabled, hoverService: hoverService })), (modelSelectorProps.models.length > 0 || modelSelectorProps.currentModelId) && ((0, jsx_runtime_1.jsx)(ChatModelSelector, { models: modelSelectorProps.models, currentModelId: modelSelectorProps.currentModelId, defaultLabel: modelSelectorProps.defaultLabel, onModelChange: modelSelectorProps.onModelChange, onConfigure: modelSelectorProps.onConfigure, disabled: !isEnabled, hoverService: hoverService }))] })] }));
|
|
2022
2056
|
};
|
|
2023
2057
|
/**
|
|
2024
2058
|
* Combined capabilities bar that shows:
|
|
@@ -2056,31 +2090,49 @@ const ChatModeSelector = React.memo(({ modes, currentMode, onModeChange, disable
|
|
|
2056
2090
|
/**
|
|
2057
2091
|
* Per-session model selector. The first option ("Default") reverts to the agent's configured
|
|
2058
2092
|
* model that new sessions use; picking any other model overrides it for the current session only.
|
|
2093
|
+
*
|
|
2094
|
+
* It lists the models marked for it rather than every model a provider offers, and ends with the way
|
|
2095
|
+
* to change that, so a list this short is not mistaken for all there is.
|
|
2059
2096
|
*/
|
|
2060
|
-
const ChatModelSelector = React.memo(({ models, currentModelId, defaultLabel, onModelChange, disabled, hoverService }) => {
|
|
2097
|
+
const ChatModelSelector = React.memo(({ models, currentModelId, defaultLabel, onModelChange, onConfigure, disabled, hoverService }) => {
|
|
2061
2098
|
// Sentinel value for the "use the agent default" option (SelectComponent needs a non-empty value).
|
|
2062
2099
|
const defaultValueId = '__default__';
|
|
2100
|
+
// …and for the entry that opens the configuration instead of selecting anything.
|
|
2101
|
+
const configureValueId = '__configure__';
|
|
2102
|
+
// Picking the configure entry leaves the model as it was, but the select has already taken it as its
|
|
2103
|
+
// selection; remounting it puts the session's own model back in the field.
|
|
2104
|
+
const [selectorGeneration, setSelectorGeneration] = React.useState(0);
|
|
2063
2105
|
const isOverridden = !!currentModelId;
|
|
2064
2106
|
// The override points at a model that is no longer ready/available. Guard on a loaded model list so
|
|
2065
2107
|
// the override is not flagged as unavailable during the initial (still empty) load.
|
|
2066
2108
|
const isUnavailable = isOverridden && models.length > 0
|
|
2067
2109
|
&& !models.some(model => model.id === currentModelId && model.status.status === 'ready');
|
|
2068
2110
|
const options = React.useMemo(() => {
|
|
2069
|
-
const readyModels = models.filter(model => model.status.status === 'ready')
|
|
2070
|
-
// Stable, predictable order: the registry adds models as their async metadata resolves.
|
|
2071
|
-
.sort((left, right) => left.id.localeCompare(right.id));
|
|
2072
2111
|
const opts = [
|
|
2073
2112
|
{
|
|
2074
2113
|
value: defaultValueId,
|
|
2075
2114
|
label: core_1.nls.localizeByDefault('Default'),
|
|
2076
2115
|
detail: defaultLabel
|
|
2077
|
-
}
|
|
2078
|
-
|
|
2116
|
+
}
|
|
2117
|
+
];
|
|
2118
|
+
// A rule between the providers, their models newest first: the models of one provider belong
|
|
2119
|
+
// together, and the registry adds them in whatever order their metadata resolves. Models whose
|
|
2120
|
+
// provider reports no release date fall back to alphabetical.
|
|
2121
|
+
(0, common_1.groupModelsByProvider)(models.filter(model => model.status.status === 'ready')).forEach(({ models: providerModels }) => {
|
|
2122
|
+
opts.push({ separator: true });
|
|
2123
|
+
opts.push(...providerModels.map(model => ({
|
|
2079
2124
|
value: model.id,
|
|
2080
2125
|
label: model.id,
|
|
2081
2126
|
detail: model.name && model.name !== model.id ? model.name : undefined
|
|
2082
|
-
}))
|
|
2083
|
-
|
|
2127
|
+
})));
|
|
2128
|
+
});
|
|
2129
|
+
// The list is deliberately short — it holds the models marked for it, not every model a provider
|
|
2130
|
+
// offers — so it says where the rest are rather than leaving the absence to be puzzled over.
|
|
2131
|
+
opts.push({ separator: true });
|
|
2132
|
+
opts.push({
|
|
2133
|
+
value: configureValueId,
|
|
2134
|
+
label: core_1.nls.localize('theia/ai/chat-ui/manageModels', 'Manage models…')
|
|
2135
|
+
});
|
|
2084
2136
|
// Keep the active override visible even if its model is no longer ready/available, so the
|
|
2085
2137
|
// selector reflects the stored modelId instead of silently falling back to "Default". Once we
|
|
2086
2138
|
// know it is unavailable, show it as a disabled (struck-through) entry that cannot be reselected.
|
|
@@ -2094,13 +2146,20 @@ const ChatModelSelector = React.memo(({ models, currentModelId, defaultLabel, on
|
|
|
2094
2146
|
}
|
|
2095
2147
|
return opts;
|
|
2096
2148
|
}, [models, defaultLabel, currentModelId, isUnavailable]);
|
|
2097
|
-
const handleChange = React.useCallback((option) =>
|
|
2149
|
+
const handleChange = React.useCallback((option) => {
|
|
2150
|
+
if (option.value === configureValueId) {
|
|
2151
|
+
setSelectorGeneration(generation => generation + 1);
|
|
2152
|
+
onConfigure();
|
|
2153
|
+
return;
|
|
2154
|
+
}
|
|
2155
|
+
onModelChange(!option.value || option.value === defaultValueId ? undefined : option.value);
|
|
2156
|
+
}, [onModelChange, onConfigure]);
|
|
2098
2157
|
const title = isUnavailable
|
|
2099
2158
|
? core_1.nls.localize('theia/ai/chat-ui/sessionModelUnavailable', 'Model for this chat is unavailable ({0}); requests use the agent default', currentModelId)
|
|
2100
2159
|
: isOverridden
|
|
2101
2160
|
? core_1.nls.localize('theia/ai/chat-ui/sessionModel', 'Model for this chat')
|
|
2102
2161
|
: core_1.nls.localize('theia/ai/chat-ui/sessionModelDefault', 'Model for this chat ({0})', defaultLabel);
|
|
2103
|
-
return ((0, jsx_runtime_1.jsx)("span", { className: 'theia-ChatInput-ModelSelector-container', onMouseEnter: hoverHandler(hoverService, title), children: (0, jsx_runtime_1.jsx)(select_component_1.SelectComponent, { className: `theia-ChatInput-ModelSelector${isOverridden ? ' session-override' : ''}${disabled ? ' disabled' : ''}`, options: options, defaultValue: currentModelId ?? defaultValueId, onChange: handleChange }) }));
|
|
2162
|
+
return ((0, jsx_runtime_1.jsx)("span", { className: 'theia-ChatInput-ModelSelector-container', onMouseEnter: hoverHandler(hoverService, title), children: (0, jsx_runtime_1.jsx)(select_component_1.SelectComponent, { className: `theia-ChatInput-ModelSelector${isOverridden ? ' session-override' : ''}${disabled ? ' disabled' : ''}`, options: options, defaultValue: currentModelId ?? defaultValueId, onChange: handleChange }, selectorGeneration) }));
|
|
2104
2163
|
});
|
|
2105
2164
|
const reasoningLevelLabel = (level) => {
|
|
2106
2165
|
switch (level) {
|
|
@@ -2120,7 +2179,7 @@ const ReasoningSelector = React.memo(({ reasoningSupport, currentLevel, onReason
|
|
|
2120
2179
|
}
|
|
2121
2180
|
}, [onReasoningChange]);
|
|
2122
2181
|
const title = core_1.nls.localizeByDefault('Reasoning');
|
|
2123
|
-
const effectiveLevel = currentLevel ?? reasoningSupport.defaultLevel ??
|
|
2182
|
+
const effectiveLevel = ai_core_1.ReasoningSupport.clampLevel(reasoningSupport, currentLevel ?? reasoningSupport.defaultLevel ?? 'off');
|
|
2124
2183
|
return ((0, jsx_runtime_1.jsx)("span", { onMouseEnter: hoverHandler(hoverService, title), children: (0, jsx_runtime_1.jsx)(select_component_1.SelectComponent
|
|
2125
2184
|
// `theia-ReasoningLevelSelector` carries the shared per-level glyphs; the ChatInput class the toolbar sizing.
|
|
2126
2185
|
, {
|
|
@@ -2174,7 +2233,7 @@ function toUiElement(element, onDeleteChangeSetElement, labelProvider, decorator
|
|
|
2174
2233
|
delete: () => onDeleteChangeSetElement(element.uri)
|
|
2175
2234
|
};
|
|
2176
2235
|
}
|
|
2177
|
-
const ChangeSetElement = element => ((0, jsx_runtime_1.jsxs)("li", { title: core_1.nls.
|
|
2236
|
+
const ChangeSetElement = element => ((0, jsx_runtime_1.jsxs)("li", { title: core_1.nls.localizeByDefault('Open Diff'), onClick: () => element.openChange?.(), children: [(0, jsx_runtime_1.jsx)("div", { className: `theia-ChatInput-ChangeSet-Icon ${element.iconClass}` }), (0, jsx_runtime_1.jsxs)("div", { className: 'theia-ChatInput-ChangeSet-labelParts', children: [(0, jsx_runtime_1.jsx)("span", { className: `theia-ChatInput-ChangeSet-title ${element.nameClass}`, children: element.name }), (0, jsx_runtime_1.jsxs)("div", { className: 'theia-ChatInput-ChangeSet-additionalInfo', children: [element.additionalInfo && (0, jsx_runtime_1.jsx)("span", { children: element.additionalInfo }), element.additionalInfoSuffixIcon
|
|
2178
2237
|
&& (0, jsx_runtime_1.jsx)("div", { className: `theia-ChatInput-ChangeSet-AdditionalInfo-SuffixIcon ${element.additionalInfoSuffixIcon.join(' ')}` })] })] }), (0, jsx_runtime_1.jsxs)("div", { className: 'theia-ChatInput-ChangeSet-Actions', children: [element.open && ((0, jsx_runtime_1.jsx)("span", { className: 'codicon codicon-file action', title: core_1.nls.localize('theia/ai/chat-ui/openOriginalFile', 'Open Original File'), onClick: noPropagation(() => element.open()) })), element.revert && ((0, jsx_runtime_1.jsx)("span", { className: 'codicon codicon-discard action', title: core_1.nls.localizeByDefault('Revert'), onClick: noPropagation(() => element.revert()) })), element.apply && ((0, jsx_runtime_1.jsx)("span", { className: 'codicon codicon-check action', title: core_1.nls.localizeByDefault('Apply'), onClick: noPropagation(() => element.apply()) })), (0, jsx_runtime_1.jsx)("span", { className: 'codicon codicon-close action', title: core_1.nls.localizeByDefault('Delete'), onClick: noPropagation(() => element.delete()) })] })] }));
|
|
2179
2238
|
function buildContextUI(context, labelProvider, onDeleteContextElement, onOpen, fileValidationState) {
|
|
2180
2239
|
if (!context) {
|