@theia/ai-chat 1.58.2 → 1.59.0-next.62

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 (103) hide show
  1. package/lib/browser/ai-chat-frontend-module.d.ts.map +1 -1
  2. package/lib/browser/ai-chat-frontend-module.js +10 -13
  3. package/lib/browser/ai-chat-frontend-module.js.map +1 -1
  4. package/lib/browser/ai-chat-preferences.d.ts +1 -0
  5. package/lib/browser/ai-chat-preferences.d.ts.map +1 -1
  6. package/lib/browser/ai-chat-preferences.js +12 -3
  7. package/lib/browser/ai-chat-preferences.js.map +1 -1
  8. package/lib/browser/change-set-file-element.d.ts +24 -6
  9. package/lib/browser/change-set-file-element.d.ts.map +1 -1
  10. package/lib/browser/change-set-file-element.js +105 -15
  11. package/lib/browser/change-set-file-element.js.map +1 -1
  12. package/lib/browser/change-set-file-resource.d.ts +40 -8
  13. package/lib/browser/change-set-file-resource.d.ts.map +1 -1
  14. package/lib/browser/change-set-file-resource.js +123 -37
  15. package/lib/browser/change-set-file-resource.js.map +1 -1
  16. package/lib/browser/change-set-file-service.d.ts +9 -3
  17. package/lib/browser/change-set-file-service.d.ts.map +1 -1
  18. package/lib/browser/change-set-file-service.js +35 -13
  19. package/lib/browser/change-set-file-service.js.map +1 -1
  20. package/lib/browser/context-file-variable-label-provider.d.ts +14 -0
  21. package/lib/browser/context-file-variable-label-provider.d.ts.map +1 -0
  22. package/lib/browser/context-file-variable-label-provider.js +63 -0
  23. package/lib/browser/context-file-variable-label-provider.js.map +1 -0
  24. package/lib/browser/context-variable-label-provider.d.ts +9 -0
  25. package/lib/browser/context-variable-label-provider.d.ts.map +1 -0
  26. package/lib/browser/context-variable-label-provider.js +55 -0
  27. package/lib/browser/context-variable-label-provider.js.map +1 -0
  28. package/lib/browser/file-chat-variable-contribution.d.ts +18 -0
  29. package/lib/browser/file-chat-variable-contribution.d.ts.map +1 -0
  30. package/lib/browser/file-chat-variable-contribution.js +135 -0
  31. package/lib/browser/file-chat-variable-contribution.js.map +1 -0
  32. package/lib/browser/frontend-chat-service.d.ts +10 -3
  33. package/lib/browser/frontend-chat-service.d.ts.map +1 -1
  34. package/lib/browser/frontend-chat-service.js +39 -19
  35. package/lib/browser/frontend-chat-service.js.map +1 -1
  36. package/lib/common/chat-agents.d.ts +47 -24
  37. package/lib/common/chat-agents.d.ts.map +1 -1
  38. package/lib/common/chat-agents.js +50 -19
  39. package/lib/common/chat-agents.js.map +1 -1
  40. package/lib/common/chat-history-entry.js +1 -1
  41. package/lib/common/chat-history-entry.js.map +1 -1
  42. package/lib/common/chat-model.d.ts +58 -35
  43. package/lib/common/chat-model.d.ts.map +1 -1
  44. package/lib/common/chat-model.js +96 -53
  45. package/lib/common/chat-model.js.map +1 -1
  46. package/lib/common/chat-service.d.ts +32 -12
  47. package/lib/common/chat-service.d.ts.map +1 -1
  48. package/lib/common/chat-service.js +77 -19
  49. package/lib/common/chat-service.js.map +1 -1
  50. package/lib/common/chat-tool-request-service.d.ts +5 -5
  51. package/lib/common/chat-tool-request-service.d.ts.map +1 -1
  52. package/lib/common/chat-tool-request-service.js.map +1 -1
  53. package/lib/common/custom-chat-agent.d.ts +7 -10
  54. package/lib/common/custom-chat-agent.d.ts.map +1 -1
  55. package/lib/common/custom-chat-agent.js +7 -11
  56. package/lib/common/custom-chat-agent.js.map +1 -1
  57. package/lib/common/index.d.ts +0 -3
  58. package/lib/common/index.d.ts.map +1 -1
  59. package/lib/common/index.js +0 -3
  60. package/lib/common/index.js.map +1 -1
  61. package/lib/common/parse-contents.d.ts +2 -2
  62. package/lib/common/parse-contents.d.ts.map +1 -1
  63. package/lib/common/parse-contents.js.map +1 -1
  64. package/lib/common/parse-contents.spec.d.ts.map +1 -1
  65. package/lib/common/parse-contents.spec.js.map +1 -1
  66. package/lib/common/response-content-matcher.d.ts +3 -3
  67. package/lib/common/response-content-matcher.d.ts.map +1 -1
  68. package/lib/common/response-content-matcher.js.map +1 -1
  69. package/package.json +12 -10
  70. package/src/browser/ai-chat-frontend-module.ts +14 -18
  71. package/src/browser/ai-chat-preferences.ts +13 -2
  72. package/src/browser/change-set-file-element.ts +99 -20
  73. package/src/browser/change-set-file-resource.ts +125 -39
  74. package/src/browser/change-set-file-service.ts +38 -16
  75. package/src/browser/context-file-variable-label-provider.ts +62 -0
  76. package/src/browser/context-variable-label-provider.ts +56 -0
  77. package/src/browser/file-chat-variable-contribution.ts +143 -0
  78. package/src/browser/frontend-chat-service.ts +40 -26
  79. package/src/common/chat-agents.ts +72 -27
  80. package/src/common/chat-history-entry.ts +1 -1
  81. package/src/common/chat-model.ts +138 -74
  82. package/src/common/chat-service.ts +96 -23
  83. package/src/common/chat-tool-request-service.ts +5 -5
  84. package/src/common/custom-chat-agent.ts +8 -20
  85. package/src/common/index.ts +0 -3
  86. package/src/common/parse-contents.spec.ts +2 -2
  87. package/src/common/parse-contents.ts +2 -2
  88. package/src/common/response-content-matcher.ts +3 -3
  89. package/lib/common/command-chat-agents.d.ts +0 -33
  90. package/lib/common/command-chat-agents.d.ts.map +0 -1
  91. package/lib/common/command-chat-agents.js +0 -329
  92. package/lib/common/command-chat-agents.js.map +0 -1
  93. package/lib/common/orchestrator-chat-agent.d.ts +0 -22
  94. package/lib/common/orchestrator-chat-agent.d.ts.map +0 -1
  95. package/lib/common/orchestrator-chat-agent.js +0 -167
  96. package/lib/common/orchestrator-chat-agent.js.map +0 -1
  97. package/lib/common/universal-chat-agent.d.ts +0 -16
  98. package/lib/common/universal-chat-agent.d.ts.map +0 -1
  99. package/lib/common/universal-chat-agent.js +0 -109
  100. package/lib/common/universal-chat-agent.js.map +0 -1
  101. package/src/common/command-chat-agents.ts +0 -354
  102. package/src/common/orchestrator-chat-agent.ts +0 -179
  103. package/src/common/universal-chat-agent.ts +0 -117
@@ -3,11 +3,11 @@ import { MarkdownString, MarkdownStringImpl } from '@theia/core/lib/common/markd
3
3
  import { Position } from '@theia/core/shared/vscode-languageserver-protocol';
4
4
  import { ChatAgentLocation } from './chat-agents';
5
5
  import { ParsedChatRequest } from './parsed-chat-request';
6
- import { ResolvedAIVariable } from '@theia/ai-core';
6
+ import { ResolvedAIContextVariable } from '@theia/ai-core';
7
7
  /**********************
8
8
  * INTERFACES AND TYPE GUARDS
9
9
  **********************/
10
- export type ChatChangeEvent = ChatAddRequestEvent | ChatAddResponseEvent | ChatRemoveRequestEvent | ChatSetChangeSetEvent | ChatSetChangeDeleteEvent | ChatUpdateChangeSetEvent | ChatRemoveChangeSetEvent;
10
+ export type ChatChangeEvent = ChatAddRequestEvent | ChatAddResponseEvent | ChatRemoveRequestEvent | ChatSetChangeSetEvent | ChatUpdateChangeSetEvent | ChatRemoveChangeSetEvent;
11
11
  export interface ChatAddRequestEvent {
12
12
  kind: 'addRequest';
13
13
  request: ChatRequestModel;
@@ -19,9 +19,7 @@ export interface ChatAddResponseEvent {
19
19
  export interface ChatSetChangeSetEvent {
20
20
  kind: 'setChangeSet';
21
21
  changeSet: ChangeSet;
22
- }
23
- export interface ChatSetChangeDeleteEvent {
24
- kind: 'deleteChangeSet';
22
+ oldChangeSet?: ChangeSet;
25
23
  }
26
24
  export interface ChatUpdateChangeSetEvent {
27
25
  kind: 'updateChangeSet';
@@ -50,34 +48,42 @@ export interface ChatModel {
50
48
  isEmpty(): boolean;
51
49
  }
52
50
  export interface ChangeSet {
51
+ onDidChange: Event<ChangeSetChangeEvent>;
53
52
  readonly title: string;
54
53
  getElements(): ChangeSetElement[];
54
+ dispose(): void;
55
55
  }
56
56
  export interface ChangeSetElement {
57
57
  readonly uri: URI;
58
+ onDidChange?: Event<void>;
58
59
  readonly name?: string;
59
60
  readonly icon?: string;
60
61
  readonly additionalInfo?: string;
61
- readonly state?: 'pending' | 'applied' | 'discarded';
62
+ readonly state?: 'pending' | 'applied' | 'stale';
62
63
  readonly type?: 'add' | 'modify' | 'delete';
63
64
  readonly data?: {
64
65
  [key: string]: unknown;
65
66
  };
66
67
  open?(): Promise<void>;
67
68
  openChange?(): Promise<void>;
68
- accept?(): Promise<void>;
69
- discard?(): Promise<void>;
69
+ apply?(): Promise<void>;
70
+ revert?(): Promise<void>;
71
+ dispose?(): void;
70
72
  }
71
73
  export interface ChatRequest {
72
74
  readonly text: string;
73
75
  readonly displayText?: string;
74
76
  }
77
+ export interface ChatContext {
78
+ variables: ResolvedAIContextVariable[];
79
+ }
75
80
  export interface ChatRequestModel {
76
81
  readonly id: string;
77
82
  readonly session: ChatModel;
78
83
  readonly request: ChatRequest;
79
84
  readonly response: ChatResponseModel;
80
85
  readonly message: ParsedChatRequest;
86
+ readonly context: ChatContext;
81
87
  readonly agentId?: string;
82
88
  readonly data?: {
83
89
  [key: string]: unknown;
@@ -102,11 +108,13 @@ export interface ChatResponseContent {
102
108
  * representation of the response.
103
109
  */
104
110
  asString?(): string | undefined;
111
+ asDisplayString?(): string | undefined;
105
112
  merge?(nextChatResponseContent: ChatResponseContent): boolean;
106
113
  }
107
114
  export declare namespace ChatResponseContent {
108
115
  function is(obj: unknown): obj is ChatResponseContent;
109
116
  function hasAsString(obj: ChatResponseContent): obj is Required<Pick<ChatResponseContent, 'asString'>> & ChatResponseContent;
117
+ function hasDisplayString(obj: ChatResponseContent): obj is Required<Pick<ChatResponseContent, 'asDisplayString'>> & ChatResponseContent;
110
118
  function hasMerge(obj: ChatResponseContent): obj is Required<Pick<ChatResponseContent, 'merge'>> & ChatResponseContent;
111
119
  }
112
120
  export interface TextChatResponseContent extends Required<ChatResponseContent> {
@@ -208,7 +216,7 @@ export interface QuestionResponseContent extends ChatResponseContent {
208
216
  value?: string;
209
217
  };
210
218
  handler: QuestionResponseHandler;
211
- request: ChatRequestModelImpl;
219
+ request: MutableChatRequestModel;
212
220
  }
213
221
  export declare namespace QuestionResponseContent {
214
222
  function is(obj: unknown): obj is QuestionResponseContent;
@@ -216,6 +224,7 @@ export declare namespace QuestionResponseContent {
216
224
  export interface ChatResponse {
217
225
  readonly content: ChatResponseContent[];
218
226
  asString(): string;
227
+ asDisplayString(): string;
219
228
  }
220
229
  /**
221
230
  * The ChatResponseModel wraps the actual ChatResponse with additional information like the current state, progress messages, a unique id etc.
@@ -276,50 +285,56 @@ export interface ChatResponseModel {
276
285
  /**********************
277
286
  * Implementations
278
287
  **********************/
279
- export declare class ChatModelImpl implements ChatModel {
288
+ export declare class MutableChatModel implements ChatModel, Disposable {
280
289
  readonly location: ChatAgentLocation;
281
290
  protected readonly _onDidChangeEmitter: Emitter<ChatChangeEvent>;
282
291
  onDidChange: Event<ChatChangeEvent>;
283
- protected _requests: ChatRequestModelImpl[];
292
+ protected _requests: MutableChatRequestModel[];
284
293
  protected _id: string;
285
- protected _changeSetListener?: Disposable;
286
294
  protected _changeSet?: ChangeSetImpl;
287
295
  constructor(location?: ChatAgentLocation);
288
- getRequests(): ChatRequestModelImpl[];
289
- getRequest(id: string): ChatRequestModelImpl | undefined;
296
+ getRequests(): MutableChatRequestModel[];
297
+ getRequest(id: string): MutableChatRequestModel | undefined;
290
298
  get id(): string;
291
299
  get changeSet(): ChangeSetImpl | undefined;
292
300
  setChangeSet(changeSet: ChangeSetImpl | undefined): void;
293
301
  removeChangeSet(): void;
294
- addRequest(parsedChatRequest: ParsedChatRequest, agentId?: string, context?: ResolvedAIVariable[]): ChatRequestModelImpl;
302
+ addRequest(parsedChatRequest: ParsedChatRequest, agentId?: string, context?: ChatContext): MutableChatRequestModel;
295
303
  isEmpty(): boolean;
304
+ dispose(): void;
305
+ }
306
+ interface ChangeSetChangeEvent {
307
+ added?: URI[];
308
+ removed?: URI[];
309
+ modified?: URI[];
310
+ /** Fired when only the state of a given element changes, not its contents */
311
+ state?: URI[];
296
312
  }
297
313
  export declare class ChangeSetImpl implements ChangeSet {
298
314
  readonly title: string;
299
- protected readonly _onDidChangeEmitter: Emitter<void>;
300
- onDidChange: Event<void>;
315
+ protected readonly _onDidChangeEmitter: Emitter<ChangeSetChangeEvent>;
316
+ onDidChange: Event<ChangeSetChangeEvent>;
301
317
  protected _elements: ChangeSetElement[];
302
318
  constructor(title: string, elements?: ChangeSetElement[]);
303
319
  getElements(): ChangeSetElement[];
304
- addElement(element: ChangeSetElement): void;
305
- addElements(elements: ChangeSetElement[]): void;
306
- replaceElement(element: ChangeSetElement): boolean;
307
- addOrReplaceElement(element: ChangeSetElement): void;
308
- removeElement(index: number): void;
309
- notifyChange(): void;
310
- }
311
- export declare class ChatRequestModelImpl implements ChatRequestModel {
320
+ /** Will replace any element that is already present, using URI as identity criterion. */
321
+ addElements(...elements: ChangeSetElement[]): void;
322
+ removeElements(...indices: number[]): void;
323
+ protected notifyChange(change: ChangeSetChangeEvent): void;
324
+ dispose(): void;
325
+ }
326
+ export declare class MutableChatRequestModel implements ChatRequestModel {
312
327
  readonly message: ParsedChatRequest;
313
328
  protected readonly _id: string;
314
- protected _session: ChatModelImpl;
329
+ protected _session: MutableChatModel;
315
330
  protected _request: ChatRequest;
316
- protected _response: ChatResponseModelImpl;
317
- protected _context: ResolvedAIVariable[];
331
+ protected _response: MutableChatResponseModel;
332
+ protected _context: ChatContext;
318
333
  protected _agentId?: string;
319
334
  protected _data: {
320
335
  [key: string]: unknown;
321
336
  };
322
- constructor(session: ChatModelImpl, message: ParsedChatRequest, agentId?: string, context?: ResolvedAIVariable[], data?: {
337
+ constructor(session: MutableChatModel, message: ParsedChatRequest, agentId?: string, context?: ChatContext, data?: {
323
338
  [key: string]: unknown;
324
339
  });
325
340
  get data(): {
@@ -328,9 +343,10 @@ export declare class ChatRequestModelImpl implements ChatRequestModel {
328
343
  addData(key: string, value: unknown): void;
329
344
  getDataByKey(key: string): unknown;
330
345
  get id(): string;
331
- get session(): ChatModelImpl;
346
+ get session(): MutableChatModel;
332
347
  get request(): ChatRequest;
333
- get response(): ChatResponseModelImpl;
348
+ get response(): MutableChatResponseModel;
349
+ get context(): ChatContext;
334
350
  get agentId(): string | undefined;
335
351
  cancel(): void;
336
352
  }
@@ -347,6 +363,7 @@ export declare class TextChatResponseContentImpl implements TextChatResponseCont
347
363
  constructor(content: string);
348
364
  get content(): string;
349
365
  asString(): string;
366
+ asDisplayString(): string | undefined;
350
367
  merge(nextChatResponseContent: TextChatResponseContent): boolean;
351
368
  }
352
369
  export declare class MarkdownChatResponseContentImpl implements MarkdownChatResponseContent {
@@ -355,6 +372,7 @@ export declare class MarkdownChatResponseContentImpl implements MarkdownChatResp
355
372
  constructor(content: string);
356
373
  get content(): MarkdownString;
357
374
  asString(): string;
375
+ asDisplayString(): string | undefined;
358
376
  merge(nextChatResponseContent: MarkdownChatResponseContent): boolean;
359
377
  }
360
378
  export declare class InformationalChatResponseContentImpl implements InformationalChatResponseContent {
@@ -391,6 +409,7 @@ export declare class ToolCallChatResponseContentImpl implements ToolCallChatResp
391
409
  get finished(): boolean;
392
410
  get result(): string | undefined;
393
411
  asString(): string;
412
+ asDisplayString(): string;
394
413
  merge(nextChatResponseContent: ToolCallChatResponseContent): boolean;
395
414
  }
396
415
  export declare const COMMAND_CHAT_RESPONSE_COMMAND: Command;
@@ -409,6 +428,7 @@ export declare class HorizontalLayoutChatResponseContentImpl implements Horizont
409
428
  constructor(content?: ChatResponseContent[]);
410
429
  get content(): ChatResponseContent[];
411
430
  asString(): string;
431
+ asDisplayString(): string | undefined;
412
432
  merge(nextChatResponseContent: ChatResponseContent): boolean;
413
433
  }
414
434
  /**
@@ -420,7 +440,7 @@ export declare class QuestionResponseContentImpl implements QuestionResponseCont
420
440
  text: string;
421
441
  value?: string;
422
442
  }[];
423
- request: ChatRequestModelImpl;
443
+ request: MutableChatRequestModel;
424
444
  handler: QuestionResponseHandler;
425
445
  readonly kind = "question";
426
446
  protected _selectedOption: {
@@ -430,7 +450,7 @@ export declare class QuestionResponseContentImpl implements QuestionResponseCont
430
450
  constructor(question: string, options: {
431
451
  text: string;
432
452
  value?: string;
433
- }[], request: ChatRequestModelImpl, handler: QuestionResponseHandler);
453
+ }[], request: MutableChatRequestModel, handler: QuestionResponseHandler);
434
454
  set selectedOption(option: {
435
455
  text: string;
436
456
  value?: string;
@@ -447,6 +467,7 @@ declare class ChatResponseImpl implements ChatResponse {
447
467
  onDidChange: Event<void>;
448
468
  protected _content: ChatResponseContent[];
449
469
  protected _responseRepresentation: string;
470
+ protected _responseRepresentationForDisplay: string;
450
471
  constructor();
451
472
  get content(): ChatResponseContent[];
452
473
  addContents(contents: ChatResponseContent[]): void;
@@ -454,9 +475,11 @@ declare class ChatResponseImpl implements ChatResponse {
454
475
  protected doAddContent(nextContent: ChatResponseContent): void;
455
476
  responseContentChanged(): void;
456
477
  protected _updateResponseRepresentation(): void;
478
+ protected responseRepresentationsToString(content: ChatResponseContent[], collect: 'asString' | 'asDisplayString'): string;
457
479
  asString(): string;
480
+ asDisplayString(): string;
458
481
  }
459
- declare class ChatResponseModelImpl implements ChatResponseModel {
482
+ declare class MutableChatResponseModel implements ChatResponseModel {
460
483
  protected readonly _onDidChangeEmitter: Emitter<void>;
461
484
  onDidChange: Event<void>;
462
485
  data: {};
@@ -496,7 +519,7 @@ declare class ChatResponseModelImpl implements ChatResponseModel {
496
519
  get errorObject(): Error | undefined;
497
520
  get isError(): boolean;
498
521
  }
499
- export declare class ErrorChatResponseModelImpl extends ChatResponseModelImpl {
522
+ export declare class ErrorChatResponseModel extends MutableChatResponseModel {
500
523
  constructor(requestId: string, error: Error, agentId?: string);
501
524
  }
502
525
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"chat-model.d.ts","sourceRoot":"","sources":["../../src/common/chat-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-model.d.ts","sourceRoot":"","sources":["../../src/common/chat-model.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@
20
20
  *--------------------------------------------------------------------------------------------*/
21
21
  // Partially copied from https://github.com/microsoft/vscode/blob/a2cab7255c0df424027be05d58e1b7b941f4ea60/src/vs/workbench/contrib/chat/common/chatModel.ts
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.ErrorChatResponseModelImpl = exports.QuestionResponseContentImpl = exports.HorizontalLayoutChatResponseContentImpl = exports.CommandChatResponseContentImpl = exports.COMMAND_CHAT_RESPONSE_COMMAND = exports.ToolCallChatResponseContentImpl = exports.CodeChatResponseContentImpl = exports.InformationalChatResponseContentImpl = exports.MarkdownChatResponseContentImpl = exports.TextChatResponseContentImpl = exports.ErrorChatResponseContentImpl = exports.ChatRequestModelImpl = exports.ChangeSetImpl = exports.ChatModelImpl = exports.QuestionResponseContent = exports.ErrorChatResponseContent = exports.ToolCallChatResponseContent = exports.HorizontalLayoutChatResponseContent = exports.CodeChatResponseContent = exports.CommandChatResponseContent = exports.InformationalChatResponseContent = exports.MarkdownChatResponseContent = exports.TextChatResponseContent = exports.Location = exports.ChatResponseContent = exports.ChatRequestModel = exports.ChatChangeEvent = void 0;
23
+ exports.ErrorChatResponseModel = exports.QuestionResponseContentImpl = exports.HorizontalLayoutChatResponseContentImpl = exports.CommandChatResponseContentImpl = exports.COMMAND_CHAT_RESPONSE_COMMAND = exports.ToolCallChatResponseContentImpl = exports.CodeChatResponseContentImpl = exports.InformationalChatResponseContentImpl = exports.MarkdownChatResponseContentImpl = exports.TextChatResponseContentImpl = exports.ErrorChatResponseContentImpl = exports.MutableChatRequestModel = exports.ChangeSetImpl = exports.MutableChatModel = exports.QuestionResponseContent = exports.ErrorChatResponseContent = exports.ToolCallChatResponseContent = exports.HorizontalLayoutChatResponseContent = exports.CodeChatResponseContent = exports.CommandChatResponseContent = exports.InformationalChatResponseContent = exports.MarkdownChatResponseContent = exports.TextChatResponseContent = exports.Location = exports.ChatResponseContent = exports.ChatRequestModel = exports.ChatChangeEvent = void 0;
24
24
  const core_1 = require("@theia/core");
25
25
  const markdown_rendering_1 = require("@theia/core/lib/common/markdown-rendering");
26
26
  const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
@@ -28,7 +28,7 @@ const chat_agents_1 = require("./chat-agents");
28
28
  var ChatChangeEvent;
29
29
  (function (ChatChangeEvent) {
30
30
  function isChangeSetEvent(event) {
31
- return event.kind === 'setChangeSet' || event.kind === 'deleteChangeSet' || event.kind === 'removeChangeSet' || event.kind === 'updateChangeSet';
31
+ return event.kind === 'setChangeSet' || event.kind === 'removeChangeSet' || event.kind === 'updateChangeSet';
32
32
  }
33
33
  ChatChangeEvent.isChangeSetEvent = isChangeSetEvent;
34
34
  })(ChatChangeEvent || (exports.ChatChangeEvent = ChatChangeEvent = {}));
@@ -69,6 +69,10 @@ var ChatResponseContent;
69
69
  return typeof obj.asString === 'function';
70
70
  }
71
71
  ChatResponseContent.hasAsString = hasAsString;
72
+ function hasDisplayString(obj) {
73
+ return typeof obj.asDisplayString === 'function';
74
+ }
75
+ ChatResponseContent.hasDisplayString = hasDisplayString;
72
76
  function hasMerge(obj) {
73
77
  return typeof obj.merge === 'function';
74
78
  }
@@ -177,14 +181,14 @@ var QuestionResponseContent;
177
181
  'handler' in obj &&
178
182
  typeof obj.handler === 'function' &&
179
183
  'request' in obj &&
180
- obj.request instanceof ChatRequestModelImpl);
184
+ obj.request instanceof MutableChatRequestModel);
181
185
  }
182
186
  QuestionResponseContent.is = is;
183
187
  })(QuestionResponseContent || (exports.QuestionResponseContent = QuestionResponseContent = {}));
184
188
  /**********************
185
189
  * Implementations
186
190
  **********************/
187
- class ChatModelImpl {
191
+ class MutableChatModel {
188
192
  constructor(location = chat_agents_1.ChatAgentLocation.Panel) {
189
193
  this.location = location;
190
194
  this._onDidChangeEmitter = new core_1.Emitter();
@@ -206,23 +210,21 @@ class ChatModelImpl {
206
210
  return this._changeSet;
207
211
  }
208
212
  setChangeSet(changeSet) {
209
- var _a;
210
- this._changeSet = changeSet;
211
- if (this._changeSet === undefined) {
212
- (_a = this._changeSetListener) === null || _a === void 0 ? void 0 : _a.dispose();
213
- this._onDidChangeEmitter.fire({
214
- kind: 'deleteChangeSet',
215
- });
216
- return;
213
+ if (!changeSet) {
214
+ return this.removeChangeSet();
217
215
  }
216
+ const oldChangeSet = this._changeSet;
217
+ oldChangeSet === null || oldChangeSet === void 0 ? void 0 : oldChangeSet.dispose();
218
+ this._changeSet = changeSet;
218
219
  this._onDidChangeEmitter.fire({
219
220
  kind: 'setChangeSet',
220
- changeSet: this._changeSet,
221
+ changeSet,
222
+ oldChangeSet,
221
223
  });
222
- this._changeSetListener = this._changeSet.onDidChange(() => {
224
+ changeSet.onDidChange(() => {
223
225
  this._onDidChangeEmitter.fire({
224
226
  kind: 'updateChangeSet',
225
- changeSet: this._changeSet,
227
+ changeSet,
226
228
  });
227
229
  });
228
230
  }
@@ -230,14 +232,15 @@ class ChatModelImpl {
230
232
  if (this._changeSet) {
231
233
  const oldChangeSet = this._changeSet;
232
234
  this._changeSet = undefined;
235
+ oldChangeSet.dispose();
233
236
  this._onDidChangeEmitter.fire({
234
237
  kind: 'removeChangeSet',
235
238
  changeSet: oldChangeSet,
236
239
  });
237
240
  }
238
241
  }
239
- addRequest(parsedChatRequest, agentId, context = []) {
240
- const requestModel = new ChatRequestModelImpl(this, parsedChatRequest, agentId, context);
242
+ addRequest(parsedChatRequest, agentId, context = { variables: [] }) {
243
+ const requestModel = new MutableChatRequestModel(this, parsedChatRequest, agentId, context);
241
244
  this._requests.push(requestModel);
242
245
  this._onDidChangeEmitter.fire({
243
246
  kind: 'addRequest',
@@ -248,58 +251,71 @@ class ChatModelImpl {
248
251
  isEmpty() {
249
252
  return this._requests.length === 0;
250
253
  }
254
+ dispose() {
255
+ this.removeChangeSet(); // Signal disposal of last change set.
256
+ this._onDidChangeEmitter.dispose();
257
+ }
251
258
  }
252
- exports.ChatModelImpl = ChatModelImpl;
259
+ exports.MutableChatModel = MutableChatModel;
253
260
  class ChangeSetImpl {
254
261
  constructor(title, elements = []) {
255
262
  this.title = title;
256
263
  this._onDidChangeEmitter = new core_1.Emitter();
257
264
  this.onDidChange = this._onDidChangeEmitter.event;
258
265
  this._elements = [];
259
- this.addElements(elements);
266
+ this.addElements(...elements);
260
267
  }
261
268
  getElements() {
262
269
  return this._elements;
263
270
  }
264
- addElement(element) {
265
- this.addElements([element]);
266
- }
267
- addElements(elements) {
268
- this._elements.push(...elements);
269
- this.notifyChange();
270
- }
271
- replaceElement(element) {
272
- const index = this._elements.findIndex(e => e.uri.toString() === element.uri.toString());
273
- if (index < 0) {
274
- return false;
275
- }
276
- this._elements[index] = element;
277
- this.notifyChange();
278
- return true;
271
+ /** Will replace any element that is already present, using URI as identity criterion. */
272
+ addElements(...elements) {
273
+ const added = [];
274
+ const modified = [];
275
+ const toDispose = [];
276
+ const current = new Map(this.getElements().map((element, index) => [element.uri.toString(), index]));
277
+ elements.forEach(element => {
278
+ var _a;
279
+ const existingIndex = current.get(element.uri.toString());
280
+ if (existingIndex !== undefined) {
281
+ modified.push(element.uri);
282
+ toDispose.push(this._elements[existingIndex]);
283
+ this._elements[existingIndex] = element;
284
+ }
285
+ else {
286
+ added.push(element.uri);
287
+ this._elements.push(element);
288
+ }
289
+ (_a = element.onDidChange) === null || _a === void 0 ? void 0 : _a.call(element, () => this.notifyChange({ state: [element.uri] }));
290
+ });
291
+ toDispose.forEach(element => { var _a; return (_a = element.dispose) === null || _a === void 0 ? void 0 : _a.call(element); });
292
+ this.notifyChange({ added, modified });
279
293
  }
280
- addOrReplaceElement(element) {
281
- if (!this.replaceElement(element)) {
282
- this.addElement(element);
283
- }
294
+ removeElements(...indices) {
295
+ // From highest to lowest so that we don't affect lower indices with our splicing.
296
+ const sorted = indices.slice().sort((left, right) => left - right);
297
+ const deletions = sorted.flatMap(index => this._elements.splice(index, 1));
298
+ deletions.forEach(deleted => { var _a; return (_a = deleted.dispose) === null || _a === void 0 ? void 0 : _a.call(deleted); });
299
+ this.notifyChange({ removed: deletions.map(element => element.uri) });
284
300
  }
285
- removeElement(index) {
286
- this._elements.splice(index, 1);
287
- this.notifyChange();
301
+ notifyChange(change) {
302
+ this._onDidChangeEmitter.fire(change);
288
303
  }
289
- notifyChange() {
290
- this._onDidChangeEmitter.fire();
304
+ dispose() {
305
+ this._elements.forEach(element => { var _a; return (_a = element.dispose) === null || _a === void 0 ? void 0 : _a.call(element); });
306
+ this._onDidChangeEmitter.dispose();
291
307
  }
292
308
  }
293
309
  exports.ChangeSetImpl = ChangeSetImpl;
294
- class ChatRequestModelImpl {
295
- constructor(session, message, agentId, context = [], data = {}) {
310
+ class MutableChatRequestModel {
311
+ constructor(session, message, agentId, context = { variables: [] }, data = {}) {
296
312
  this.message = message;
297
313
  // TODO accept serialized data as a parameter to restore a previously saved ChatRequestModel
298
314
  this._request = message.request;
299
315
  this._id = (0, core_1.generateUuid)();
300
316
  this._session = session;
301
- this._response = new ChatResponseModelImpl(this._id, agentId);
302
- this._context = context.concat(message.parts.filter(part => part.kind === 'var').map(part => part.resolution));
317
+ this._response = new MutableChatResponseModel(this._id, agentId);
318
+ this._context = context;
303
319
  this._agentId = agentId;
304
320
  this._data = data;
305
321
  }
@@ -324,6 +340,9 @@ class ChatRequestModelImpl {
324
340
  get response() {
325
341
  return this._response;
326
342
  }
343
+ get context() {
344
+ return this._context;
345
+ }
327
346
  get agentId() {
328
347
  return this._agentId;
329
348
  }
@@ -331,7 +350,7 @@ class ChatRequestModelImpl {
331
350
  this.response.cancel();
332
351
  }
333
352
  }
334
- exports.ChatRequestModelImpl = ChatRequestModelImpl;
353
+ exports.MutableChatRequestModel = MutableChatRequestModel;
335
354
  class ErrorChatResponseContentImpl {
336
355
  constructor(error) {
337
356
  this.kind = 'error';
@@ -356,6 +375,9 @@ class TextChatResponseContentImpl {
356
375
  asString() {
357
376
  return this._content;
358
377
  }
378
+ asDisplayString() {
379
+ return this.asString();
380
+ }
359
381
  merge(nextChatResponseContent) {
360
382
  this._content += nextChatResponseContent.content;
361
383
  return true;
@@ -374,6 +396,9 @@ class MarkdownChatResponseContentImpl {
374
396
  asString() {
375
397
  return this._content.value;
376
398
  }
399
+ asDisplayString() {
400
+ return this.asString();
401
+ }
377
402
  merge(nextChatResponseContent) {
378
403
  this._content.appendMarkdown(nextChatResponseContent.content.value);
379
404
  return true;
@@ -448,6 +473,9 @@ class ToolCallChatResponseContentImpl {
448
473
  return this._result;
449
474
  }
450
475
  asString() {
476
+ return '';
477
+ }
478
+ asDisplayString() {
451
479
  var _a;
452
480
  return `Tool call: ${this._name}(${(_a = this._arguments) !== null && _a !== void 0 ? _a : ''})`;
453
481
  }
@@ -499,6 +527,9 @@ class HorizontalLayoutChatResponseContentImpl {
499
527
  asString() {
500
528
  return this._content.map(child => child.asString && child.asString()).join(' ');
501
529
  }
530
+ asDisplayString() {
531
+ return this.asString();
532
+ }
502
533
  merge(nextChatResponseContent) {
503
534
  if (HorizontalLayoutChatResponseContent.is(nextChatResponseContent)) {
504
535
  this._content.push(...nextChatResponseContent.content);
@@ -591,8 +622,17 @@ class ChatResponseImpl {
591
622
  this._onDidChangeEmitter.fire();
592
623
  }
593
624
  _updateResponseRepresentation() {
594
- this._responseRepresentation = this._content
625
+ this._responseRepresentation = this.responseRepresentationsToString(this._content, 'asString');
626
+ this._responseRepresentationForDisplay = this.responseRepresentationsToString(this.content, 'asDisplayString');
627
+ }
628
+ responseRepresentationsToString(content, collect) {
629
+ return content
595
630
  .map(responseContent => {
631
+ if (collect === 'asDisplayString') {
632
+ if (ChatResponseContent.hasDisplayString(responseContent)) {
633
+ return responseContent.asDisplayString();
634
+ }
635
+ }
596
636
  if (ChatResponseContent.hasAsString(responseContent)) {
597
637
  return responseContent.asString();
598
638
  }
@@ -602,14 +642,17 @@ class ChatResponseImpl {
602
642
  console.warn('Was not able to map responseContent to a string', responseContent);
603
643
  return undefined;
604
644
  })
605
- .filter(text => text !== undefined)
645
+ .filter(text => (text !== undefined && text !== ''))
606
646
  .join('\n\n');
607
647
  }
608
648
  asString() {
609
649
  return this._responseRepresentation;
610
650
  }
651
+ asDisplayString() {
652
+ return this._responseRepresentationForDisplay;
653
+ }
611
654
  }
612
- class ChatResponseModelImpl {
655
+ class MutableChatResponseModel {
613
656
  constructor(requestId, agentId) {
614
657
  this._onDidChangeEmitter = new core_1.Emitter();
615
658
  this.onDidChange = this._onDidChangeEmitter.event;
@@ -718,11 +761,11 @@ class ChatResponseModelImpl {
718
761
  return this._isError;
719
762
  }
720
763
  }
721
- class ErrorChatResponseModelImpl extends ChatResponseModelImpl {
764
+ class ErrorChatResponseModel extends MutableChatResponseModel {
722
765
  constructor(requestId, error, agentId) {
723
766
  super(requestId, agentId);
724
767
  this.error(error);
725
768
  }
726
769
  }
727
- exports.ErrorChatResponseModelImpl = ErrorChatResponseModelImpl;
770
+ exports.ErrorChatResponseModel = ErrorChatResponseModel;
728
771
  //# sourceMappingURL=chat-model.js.map