@theia/ai-chat-ui 1.76.0-next.6 → 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.
Files changed (134) hide show
  1. package/lib/browser/ai-chat-ui-frontend-module.d.ts.map +1 -1
  2. package/lib/browser/ai-chat-ui-frontend-module.js +6 -0
  3. package/lib/browser/ai-chat-ui-frontend-module.js.map +1 -1
  4. package/lib/browser/chat-find/chat-find-contribution.d.ts +18 -0
  5. package/lib/browser/chat-find/chat-find-contribution.d.ts.map +1 -0
  6. package/lib/browser/chat-find/chat-find-contribution.js +76 -0
  7. package/lib/browser/chat-find/chat-find-contribution.js.map +1 -0
  8. package/lib/browser/chat-find/chat-find-highlighter.d.ts +114 -0
  9. package/lib/browser/chat-find/chat-find-highlighter.d.ts.map +1 -0
  10. package/lib/browser/chat-find/chat-find-highlighter.js +353 -0
  11. package/lib/browser/chat-find/chat-find-highlighter.js.map +1 -0
  12. package/lib/browser/chat-find/chat-find-highlighter.spec.d.ts +2 -0
  13. package/lib/browser/chat-find/chat-find-highlighter.spec.d.ts.map +1 -0
  14. package/lib/browser/chat-find/chat-find-highlighter.spec.js +283 -0
  15. package/lib/browser/chat-find/chat-find-highlighter.spec.js.map +1 -0
  16. package/lib/browser/chat-find/chat-find-matcher.d.ts +72 -0
  17. package/lib/browser/chat-find/chat-find-matcher.d.ts.map +1 -0
  18. package/lib/browser/chat-find/chat-find-matcher.js +168 -0
  19. package/lib/browser/chat-find/chat-find-matcher.js.map +1 -0
  20. package/lib/browser/chat-find/chat-find-matcher.spec.d.ts +2 -0
  21. package/lib/browser/chat-find/chat-find-matcher.spec.d.ts.map +1 -0
  22. package/lib/browser/chat-find/chat-find-matcher.spec.js +145 -0
  23. package/lib/browser/chat-find/chat-find-matcher.spec.js.map +1 -0
  24. package/lib/browser/chat-find/chat-find-text.d.ts +20 -0
  25. package/lib/browser/chat-find/chat-find-text.d.ts.map +1 -0
  26. package/lib/browser/chat-find/chat-find-text.js +56 -0
  27. package/lib/browser/chat-find/chat-find-text.js.map +1 -0
  28. package/lib/browser/chat-find/chat-find-widget.d.ts +96 -0
  29. package/lib/browser/chat-find/chat-find-widget.d.ts.map +1 -0
  30. package/lib/browser/chat-find/chat-find-widget.js +332 -0
  31. package/lib/browser/chat-find/chat-find-widget.js.map +1 -0
  32. package/lib/browser/chat-find/chat-find-widget.spec.d.ts +2 -0
  33. package/lib/browser/chat-find/chat-find-widget.spec.d.ts.map +1 -0
  34. package/lib/browser/chat-find/chat-find-widget.spec.js +236 -0
  35. package/lib/browser/chat-find/chat-find-widget.spec.js.map +1 -0
  36. package/lib/browser/chat-input-scroll-util.d.ts +7 -0
  37. package/lib/browser/chat-input-scroll-util.d.ts.map +1 -0
  38. package/lib/browser/chat-input-scroll-util.js +33 -0
  39. package/lib/browser/chat-input-scroll-util.js.map +1 -0
  40. package/lib/browser/chat-input-scroll-util.spec.d.ts +2 -0
  41. package/lib/browser/chat-input-scroll-util.spec.d.ts.map +1 -0
  42. package/lib/browser/chat-input-scroll-util.spec.js +38 -0
  43. package/lib/browser/chat-input-scroll-util.spec.js.map +1 -0
  44. package/lib/browser/chat-input-widget.d.ts +21 -3
  45. package/lib/browser/chat-input-widget.d.ts.map +1 -1
  46. package/lib/browser/chat-input-widget.js +109 -50
  47. package/lib/browser/chat-input-widget.js.map +1 -1
  48. package/lib/browser/chat-input-widget.spec.js +21 -0
  49. package/lib/browser/chat-input-widget.spec.js.map +1 -1
  50. package/lib/browser/chat-response-renderer/code-part-renderer.d.ts.map +1 -1
  51. package/lib/browser/chat-response-renderer/code-part-renderer.js +9 -1
  52. package/lib/browser/chat-response-renderer/code-part-renderer.js.map +1 -1
  53. package/lib/browser/chat-response-renderer/code-wrapper-editors.d.ts +13 -0
  54. package/lib/browser/chat-response-renderer/code-wrapper-editors.d.ts.map +1 -0
  55. package/lib/browser/chat-response-renderer/code-wrapper-editors.js +41 -0
  56. package/lib/browser/chat-response-renderer/code-wrapper-editors.js.map +1 -0
  57. package/lib/browser/chat-response-renderer/delegation-tool-renderer.js +74 -43
  58. package/lib/browser/chat-response-renderer/delegation-tool-renderer.js.map +1 -1
  59. package/lib/browser/chat-response-renderer/index.d.ts +1 -0
  60. package/lib/browser/chat-response-renderer/index.d.ts.map +1 -1
  61. package/lib/browser/chat-response-renderer/index.js +1 -0
  62. package/lib/browser/chat-response-renderer/index.js.map +1 -1
  63. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts +9 -0
  64. package/lib/browser/chat-response-renderer/markdown-part-renderer.d.ts.map +1 -1
  65. package/lib/browser/chat-response-renderer/markdown-part-renderer.js +34 -16
  66. package/lib/browser/chat-response-renderer/markdown-part-renderer.js.map +1 -1
  67. package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.d.ts.map +1 -1
  68. package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.js +2 -2
  69. package/lib/browser/chat-response-renderer/server-toolcall-part-renderer.js.map +1 -1
  70. package/lib/browser/chat-response-renderer/spinner.d.ts +3 -0
  71. package/lib/browser/chat-response-renderer/spinner.d.ts.map +1 -0
  72. package/lib/browser/chat-response-renderer/spinner.js +24 -0
  73. package/lib/browser/chat-response-renderer/spinner.js.map +1 -0
  74. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts +9 -1
  75. package/lib/browser/chat-response-renderer/thinking-part-renderer.d.ts.map +1 -1
  76. package/lib/browser/chat-response-renderer/thinking-part-renderer.js +93 -2
  77. package/lib/browser/chat-response-renderer/thinking-part-renderer.js.map +1 -1
  78. package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.d.ts +2 -0
  79. package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.d.ts.map +1 -0
  80. package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.js +84 -0
  81. package/lib/browser/chat-response-renderer/thinking-part-renderer.spec.js.map +1 -0
  82. package/lib/browser/chat-response-renderer/toolcall-part-renderer.d.ts.map +1 -1
  83. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js +2 -2
  84. package/lib/browser/chat-response-renderer/toolcall-part-renderer.js.map +1 -1
  85. package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js +16 -0
  86. package/lib/browser/chat-response-renderer/toolcall-part-renderer.spec.js.map +1 -1
  87. package/lib/browser/chat-response-renderer/toolcall-utils.d.ts.map +1 -1
  88. package/lib/browser/chat-response-renderer/toolcall-utils.js +7 -2
  89. package/lib/browser/chat-response-renderer/toolcall-utils.js.map +1 -1
  90. package/lib/browser/chat-tree-view/chat-view-tree-container.d.ts.map +1 -1
  91. package/lib/browser/chat-tree-view/chat-view-tree-container.js +4 -0
  92. package/lib/browser/chat-tree-view/chat-view-tree-container.js.map +1 -1
  93. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts +20 -1
  94. package/lib/browser/chat-tree-view/chat-view-tree-widget.d.ts.map +1 -1
  95. package/lib/browser/chat-tree-view/chat-view-tree-widget.js +88 -7
  96. package/lib/browser/chat-tree-view/chat-view-tree-widget.js.map +1 -1
  97. package/lib/common/toolcall-utils.d.ts +11 -1
  98. package/lib/common/toolcall-utils.d.ts.map +1 -1
  99. package/lib/common/toolcall-utils.js +191 -9
  100. package/lib/common/toolcall-utils.js.map +1 -1
  101. package/lib/common/toolcall-utils.spec.js +92 -4
  102. package/lib/common/toolcall-utils.spec.js.map +1 -1
  103. package/package.json +13 -13
  104. package/src/browser/ai-chat-ui-frontend-module.ts +7 -0
  105. package/src/browser/chat-find/chat-find-contribution.ts +74 -0
  106. package/src/browser/chat-find/chat-find-highlighter.spec.ts +313 -0
  107. package/src/browser/chat-find/chat-find-highlighter.ts +385 -0
  108. package/src/browser/chat-find/chat-find-matcher.spec.ts +173 -0
  109. package/src/browser/chat-find/chat-find-matcher.ts +197 -0
  110. package/src/browser/chat-find/chat-find-text.ts +65 -0
  111. package/src/browser/chat-find/chat-find-widget.spec.tsx +261 -0
  112. package/src/browser/chat-find/chat-find-widget.tsx +418 -0
  113. package/src/browser/chat-input-scroll-util.spec.ts +42 -0
  114. package/src/browser/chat-input-scroll-util.ts +30 -0
  115. package/src/browser/chat-input-widget.spec.ts +29 -0
  116. package/src/browser/chat-input-widget.tsx +118 -56
  117. package/src/browser/chat-response-renderer/code-part-renderer.tsx +9 -1
  118. package/src/browser/chat-response-renderer/code-wrapper-editors.ts +41 -0
  119. package/src/browser/chat-response-renderer/delegation-tool-renderer.tsx +88 -62
  120. package/src/browser/chat-response-renderer/index.ts +1 -0
  121. package/src/browser/chat-response-renderer/markdown-part-renderer.tsx +34 -17
  122. package/src/browser/chat-response-renderer/server-toolcall-part-renderer.tsx +2 -5
  123. package/src/browser/chat-response-renderer/spinner.tsx +22 -0
  124. package/src/browser/chat-response-renderer/thinking-part-renderer.spec.tsx +104 -0
  125. package/src/browser/chat-response-renderer/thinking-part-renderer.tsx +129 -9
  126. package/src/browser/chat-response-renderer/toolcall-part-renderer.spec.ts +16 -0
  127. package/src/browser/chat-response-renderer/toolcall-part-renderer.tsx +1 -4
  128. package/src/browser/chat-response-renderer/toolcall-utils.ts +5 -0
  129. package/src/browser/chat-tree-view/chat-view-tree-container.ts +4 -0
  130. package/src/browser/chat-tree-view/chat-view-tree-widget.tsx +99 -6
  131. package/src/browser/style/chat-find.css +107 -0
  132. package/src/browser/style/index.css +75 -8
  133. package/src/common/toolcall-utils.spec.ts +113 -4
  134. 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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=chat-input-scroll-util.spec.d.ts.map
@@ -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 { FrontendVariableService, AIActivationService } from '@theia/ai-core/lib/browser';
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 sessionLevel = session?.model.settings?.commonSettings?.reasoning?.level;
278
- if (sessionLevel) {
279
- return sessionLevel;
280
- }
281
- if (this.savedReasoning?.level) {
282
- return this.savedReasoning.level;
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.availableModels,
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
- const updateLineCounts = () => {
1713
- // We need the line numbers to allow scrolling by using the keyboard
1714
- const model = editor.getControl().getModel();
1715
- const lineCount = model.getLineCount();
1716
- const decorations = [];
1717
- for (let lineNumber = 1; lineNumber <= lineCount; lineNumber++) {
1718
- decorations.push({
1719
- range: new monaco_editor_core_1.Range(lineNumber, 1, lineNumber, 1),
1720
- options: {
1721
- description: `line-number-${lineNumber}`,
1722
- isWholeLine: false,
1723
- className: `line-number-${lineNumber}`,
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().getModel()?.onDidChangeContent(() => {
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
- ...readyModels.map(model => ({
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) => onModelChange(!option.value || option.value === defaultValueId ? undefined : option.value), [onModelChange]);
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 ?? reasoningSupport.supportedLevels[0] ?? 'off';
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.localize('theia/ai/chat-ui/openDiff', '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
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) {