@theia/ai-chat 1.69.0-next.29 → 1.69.0-next.35

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 (70) hide show
  1. package/lib/browser/ai-chat-frontend-contribution.d.ts +13 -1
  2. package/lib/browser/ai-chat-frontend-contribution.d.ts.map +1 -1
  3. package/lib/browser/ai-chat-frontend-contribution.js +50 -1
  4. package/lib/browser/ai-chat-frontend-contribution.js.map +1 -1
  5. package/lib/browser/ai-chat-frontend-module.d.ts.map +1 -1
  6. package/lib/browser/ai-chat-frontend-module.js +13 -1
  7. package/lib/browser/ai-chat-frontend-module.js.map +1 -1
  8. package/lib/browser/custom-agent-factory.d.ts +1 -1
  9. package/lib/browser/custom-agent-factory.d.ts.map +1 -1
  10. package/lib/browser/custom-agent-frontend-application-contribution.js +2 -2
  11. package/lib/browser/custom-agent-frontend-application-contribution.js.map +1 -1
  12. package/lib/browser/file-chat-variable-contribution.d.ts +8 -8
  13. package/lib/browser/file-chat-variable-contribution.d.ts.map +1 -1
  14. package/lib/browser/file-chat-variable-contribution.js +71 -61
  15. package/lib/browser/file-chat-variable-contribution.js.map +1 -1
  16. package/lib/browser/image-context-variable-contribution.d.ts +16 -3
  17. package/lib/browser/image-context-variable-contribution.d.ts.map +1 -1
  18. package/lib/browser/image-context-variable-contribution.js +181 -12
  19. package/lib/browser/image-context-variable-contribution.js.map +1 -1
  20. package/lib/browser/image-file-utils.d.ts +11 -0
  21. package/lib/browser/image-file-utils.d.ts.map +1 -0
  22. package/lib/browser/image-file-utils.js +54 -0
  23. package/lib/browser/image-file-utils.js.map +1 -0
  24. package/lib/browser/pending-image-registry.d.ts +116 -0
  25. package/lib/browser/pending-image-registry.d.ts.map +1 -0
  26. package/lib/browser/pending-image-registry.js +121 -0
  27. package/lib/browser/pending-image-registry.js.map +1 -0
  28. package/lib/common/chat-agent-service.d.ts +5 -1
  29. package/lib/common/chat-agent-service.d.ts.map +1 -1
  30. package/lib/common/chat-agent-service.js +35 -1
  31. package/lib/common/chat-agent-service.js.map +1 -1
  32. package/lib/common/chat-agent-service.spec.d.ts +2 -0
  33. package/lib/common/chat-agent-service.spec.d.ts.map +1 -0
  34. package/lib/common/chat-agent-service.spec.js +194 -0
  35. package/lib/common/chat-agent-service.spec.js.map +1 -0
  36. package/lib/common/chat-model.d.ts +3 -0
  37. package/lib/common/chat-model.d.ts.map +1 -1
  38. package/lib/common/chat-model.js.map +1 -1
  39. package/lib/common/image-context-variable.d.ts +27 -9
  40. package/lib/common/image-context-variable.d.ts.map +1 -1
  41. package/lib/common/image-context-variable.js +36 -29
  42. package/lib/common/image-context-variable.js.map +1 -1
  43. package/package.json +9 -9
  44. package/src/browser/ai-chat-frontend-contribution.ts +48 -1
  45. package/src/browser/ai-chat-frontend-module.ts +18 -3
  46. package/src/browser/custom-agent-factory.ts +1 -1
  47. package/src/browser/custom-agent-frontend-application-contribution.ts +2 -2
  48. package/src/browser/file-chat-variable-contribution.ts +77 -64
  49. package/src/browser/image-context-variable-contribution.ts +204 -7
  50. package/src/browser/image-file-utils.ts +54 -0
  51. package/src/browser/pending-image-registry.ts +237 -0
  52. package/src/common/chat-agent-service.spec.ts +225 -0
  53. package/src/common/chat-agent-service.ts +33 -3
  54. package/src/common/chat-model.ts +2 -2
  55. package/src/common/image-context-variable.ts +50 -33
  56. package/lib/browser/file-chat-variable-contribution.spec.d.ts +0 -2
  57. package/lib/browser/file-chat-variable-contribution.spec.d.ts.map +0 -1
  58. package/lib/browser/file-chat-variable-contribution.spec.js +0 -99
  59. package/lib/browser/file-chat-variable-contribution.spec.js.map +0 -1
  60. package/lib/common/image-context-variable-origin.spec.d.ts +0 -2
  61. package/lib/common/image-context-variable-origin.spec.d.ts.map +0 -1
  62. package/lib/common/image-context-variable-origin.spec.js +0 -41
  63. package/lib/common/image-context-variable-origin.spec.js.map +0 -1
  64. package/lib/common/image-context-variable.spec.d.ts +0 -2
  65. package/lib/common/image-context-variable.spec.d.ts.map +0 -1
  66. package/lib/common/image-context-variable.spec.js +0 -66
  67. package/lib/common/image-context-variable.spec.js.map +0 -1
  68. package/src/browser/file-chat-variable-contribution.spec.ts +0 -125
  69. package/src/common/image-context-variable-origin.spec.ts +0 -46
  70. package/src/common/image-context-variable.spec.ts +0 -70
@@ -1,11 +1,23 @@
1
1
  import { AIVariableService } from '@theia/ai-core';
2
- import { Command, CommandContribution, CommandRegistry } from '@theia/core';
2
+ import { Command, CommandContribution, CommandRegistry, URI } from '@theia/core';
3
+ import { OpenerService } from '@theia/core/lib/browser';
4
+ import { FileService } from '@theia/filesystem/lib/browser/file-service';
5
+ import { WorkspaceService } from '@theia/workspace/lib/browser';
3
6
  import { ChatService } from '../common';
4
7
  export declare const VARIABLE_ADD_CONTEXT_COMMAND: Command;
8
+ export declare const OPEN_FILE_BY_PATH_COMMAND: Command;
5
9
  export declare class AIChatFrontendContribution implements CommandContribution {
6
10
  protected readonly variableService: AIVariableService;
7
11
  protected readonly chatService: ChatService;
12
+ protected readonly workspaceService: WorkspaceService;
13
+ protected readonly fileService: FileService;
14
+ protected readonly openerService: OpenerService;
8
15
  registerCommands(registry: CommandRegistry): void;
9
16
  addContextVariable(variableName: string, arg: string | undefined): Promise<void>;
17
+ /**
18
+ * Open a file by its workspace-relative path.
19
+ */
20
+ openFileByPath(wsRelativePath: string): Promise<void>;
21
+ protected resolveWorkspaceRelativePath(wsRelativePath: string): Promise<URI | undefined>;
10
22
  }
11
23
  //# sourceMappingURL=ai-chat-frontend-contribution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chat-frontend-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAqB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,eAAO,MAAM,4BAA4B,EAAE,OAGF,CAAC;AAE1C,qBACa,0BAA2B,YAAW,mBAAmB;IAElE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAE5C,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAO3C,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAQzF"}
1
+ {"version":3,"file":"ai-chat-frontend-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAqB,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAQ,GAAG,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAQ,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,eAAO,MAAM,4BAA4B,EAAE,OAGF,CAAC;AAE1C,eAAO,MAAM,yBAAyB,EAAE,OAEvC,CAAC;AAEF,qBACa,0BAA2B,YAAW,mBAAmB;IAElE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAE5C,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAEtD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAE5C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAY3C,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAStF;;OAEG;IACG,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;cAO3C,4BAA4B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;CAkBjG"}
@@ -15,22 +15,32 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.AIChatFrontendContribution = exports.VARIABLE_ADD_CONTEXT_COMMAND = void 0;
18
+ exports.AIChatFrontendContribution = exports.OPEN_FILE_BY_PATH_COMMAND = exports.VARIABLE_ADD_CONTEXT_COMMAND = void 0;
19
19
  const tslib_1 = require("tslib");
20
20
  const ai_core_1 = require("@theia/ai-core");
21
21
  const core_1 = require("@theia/core");
22
+ const browser_1 = require("@theia/core/lib/browser");
22
23
  const inversify_1 = require("@theia/core/shared/inversify");
24
+ const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
25
+ const browser_2 = require("@theia/workspace/lib/browser");
23
26
  const common_1 = require("../common");
24
27
  exports.VARIABLE_ADD_CONTEXT_COMMAND = core_1.Command.toLocalizedCommand({
25
28
  id: 'add-context-variable',
26
29
  label: 'Add context variable'
27
30
  }, 'theia/ai/chat-ui/addContextVariable');
31
+ exports.OPEN_FILE_BY_PATH_COMMAND = {
32
+ id: 'ai-chat.open-file-by-path',
33
+ };
28
34
  let AIChatFrontendContribution = class AIChatFrontendContribution {
29
35
  registerCommands(registry) {
30
36
  registry.registerCommand(exports.VARIABLE_ADD_CONTEXT_COMMAND, {
31
37
  execute: (...args) => args.length > 1 && this.addContextVariable(args[0], args[1]),
32
38
  isVisible: () => false,
33
39
  });
40
+ registry.registerCommand(exports.OPEN_FILE_BY_PATH_COMMAND, {
41
+ execute: (wsRelativePath) => this.openFileByPath(wsRelativePath),
42
+ isVisible: () => false,
43
+ });
34
44
  }
35
45
  async addContextVariable(variableName, arg) {
36
46
  const variable = this.variableService.getVariable(variableName);
@@ -39,6 +49,33 @@ let AIChatFrontendContribution = class AIChatFrontendContribution {
39
49
  }
40
50
  this.chatService.getActiveSession()?.model.context.addVariables({ variable, arg });
41
51
  }
52
+ /**
53
+ * Open a file by its workspace-relative path.
54
+ */
55
+ async openFileByPath(wsRelativePath) {
56
+ const uri = await this.resolveWorkspaceRelativePath(wsRelativePath);
57
+ if (uri) {
58
+ await (0, browser_1.open)(this.openerService, uri);
59
+ }
60
+ }
61
+ async resolveWorkspaceRelativePath(wsRelativePath) {
62
+ const path = new core_1.Path(core_1.Path.normalizePathSeparator(wsRelativePath));
63
+ if (path.isAbsolute) {
64
+ const uri = new core_1.URI(wsRelativePath);
65
+ if (await this.fileService.exists(uri)) {
66
+ return uri;
67
+ }
68
+ return undefined;
69
+ }
70
+ const workspaceRoots = this.workspaceService.tryGetRoots();
71
+ for (const root of workspaceRoots) {
72
+ const uri = root.resource.resolve(path);
73
+ if (await this.fileService.exists(uri)) {
74
+ return uri;
75
+ }
76
+ }
77
+ return undefined;
78
+ }
42
79
  };
43
80
  exports.AIChatFrontendContribution = AIChatFrontendContribution;
44
81
  tslib_1.__decorate([
@@ -49,6 +86,18 @@ tslib_1.__decorate([
49
86
  (0, inversify_1.inject)(common_1.ChatService),
50
87
  tslib_1.__metadata("design:type", Object)
51
88
  ], AIChatFrontendContribution.prototype, "chatService", void 0);
89
+ tslib_1.__decorate([
90
+ (0, inversify_1.inject)(browser_2.WorkspaceService),
91
+ tslib_1.__metadata("design:type", browser_2.WorkspaceService)
92
+ ], AIChatFrontendContribution.prototype, "workspaceService", void 0);
93
+ tslib_1.__decorate([
94
+ (0, inversify_1.inject)(file_service_1.FileService),
95
+ tslib_1.__metadata("design:type", file_service_1.FileService)
96
+ ], AIChatFrontendContribution.prototype, "fileService", void 0);
97
+ tslib_1.__decorate([
98
+ (0, inversify_1.inject)(browser_1.OpenerService),
99
+ tslib_1.__metadata("design:type", Object)
100
+ ], AIChatFrontendContribution.prototype, "openerService", void 0);
52
101
  exports.AIChatFrontendContribution = AIChatFrontendContribution = tslib_1.__decorate([
53
102
  (0, inversify_1.injectable)()
54
103
  ], AIChatFrontendContribution);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chat-frontend-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,oDAAoD;AACpD,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,4CAAsE;AACtE,sCAA4E;AAC5E,4DAAkE;AAClE,sCAAwC;AAE3B,QAAA,4BAA4B,GAAY,cAAO,CAAC,kBAAkB,CAAC;IAC5E,EAAE,EAAE,sBAAsB;IAC1B,KAAK,EAAE,sBAAsB;CAChC,EAAE,qCAAqC,CAAC,CAAC;AAGnC,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAMnC,gBAAgB,CAAC,QAAyB;QACtC,QAAQ,CAAC,eAAe,CAAC,oCAA4B,EAAE;YACnD,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YAClF,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK;SACzB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,YAAoB,EAAE,GAAuB;QAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,IAAI,CAAC,2BAAiB,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,OAAO;QACX,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ,CAAA;AArBY,gEAA0B;AAEhB;IADlB,IAAA,kBAAM,EAAC,2BAAiB,CAAC;;mEAC4B;AAEnC;IADlB,IAAA,kBAAM,EAAC,oBAAW,CAAC;;+DACwB;qCAJnC,0BAA0B;IADtC,IAAA,sBAAU,GAAE;GACA,0BAA0B,CAqBtC"}
1
+ {"version":3,"file":"ai-chat-frontend-contribution.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-contribution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chat-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAyD/D,wBAgHG"}
1
+ {"version":3,"file":"ai-chat-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AA0D/D,wBA8HG"}
@@ -46,6 +46,7 @@ const task_context_service_1 = require("./task-context-service");
46
46
  const task_context_storage_service_1 = require("./task-context-storage-service");
47
47
  const ai_chat_frontend_contribution_1 = require("./ai-chat-frontend-contribution");
48
48
  const image_context_variable_contribution_1 = require("./image-context-variable-contribution");
49
+ const pending_image_registry_1 = require("./pending-image-registry");
49
50
  const agent_delegation_tool_1 = require("./agent-delegation-tool");
50
51
  const chat_tool_preference_bindings_1 = require("./chat-tool-preference-bindings");
51
52
  const chat_tool_preferences_1 = require("../common/chat-tool-preferences");
@@ -90,7 +91,7 @@ exports.default = new inversify_1.ContainerModule(bind => {
90
91
  (0, chat_tool_preferences_1.bindChatToolPreferences)(bind);
91
92
  bind(chat_tool_preference_bindings_1.ToolConfirmationManager).toSelf().inSingletonScope();
92
93
  bind(custom_chat_agent_1.CustomChatAgent).toSelf();
93
- bind(custom_agent_factory_1.CustomAgentFactory).toFactory(ctx => (id, name, description, prompt, defaultLLM) => {
94
+ bind(custom_agent_factory_1.CustomAgentFactory).toFactory(ctx => (id, name, description, prompt, defaultLLM, showInChat) => {
94
95
  const agent = ctx.container.get(custom_chat_agent_1.CustomChatAgent);
95
96
  agent.id = id;
96
97
  agent.name = name;
@@ -102,6 +103,15 @@ exports.default = new inversify_1.ContainerModule(bind => {
102
103
  }];
103
104
  ctx.container.get(common_2.ChatAgentService).registerChatAgent(agent);
104
105
  ctx.container.get(common_1.AgentService).registerAgent(agent);
106
+ // Initialize showInChat preference from YAML if not already set
107
+ if (showInChat === false) {
108
+ const settingsService = ctx.container.get(common_1.AISettingsService);
109
+ settingsService.getAgentSettings(id).then(settings => {
110
+ if (settings?.showInChat === undefined) {
111
+ settingsService.updateAgentSettings(id, { showInChat: false });
112
+ }
113
+ });
114
+ }
105
115
  return agent;
106
116
  });
107
117
  bind(browser_1.FrontendApplicationContribution).to(custom_agent_frontend_application_contribution_1.AICustomAgentsFrontendApplicationContribution).inSingletonScope();
@@ -133,6 +143,8 @@ exports.default = new inversify_1.ContainerModule(bind => {
133
143
  bind(image_context_variable_contribution_1.ImageContextVariableContribution).toSelf().inSingletonScope();
134
144
  bind(common_1.AIVariableContribution).toService(image_context_variable_contribution_1.ImageContextVariableContribution);
135
145
  bind(browser_1.LabelProviderContribution).toService(image_context_variable_contribution_1.ImageContextVariableContribution);
146
+ bind(pending_image_registry_1.DefaultPendingImageRegistry).toSelf().inSingletonScope();
147
+ bind(pending_image_registry_1.PendingImageRegistry).toService(pending_image_registry_1.DefaultPendingImageRegistry);
136
148
  bind(task_context_service_1.TaskContextService).toSelf().inSingletonScope();
137
149
  bind(task_context_storage_service_1.InMemoryTaskContextStorage).toSelf().inSingletonScope();
138
150
  bind(task_context_service_1.TaskContextStorageService).toService(task_context_storage_service_1.InMemoryTaskContextStorage);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-chat-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-chat-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-chat-frontend-module.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import { CustomChatAgent } from '../common';
2
2
  export declare const CustomAgentFactory: unique symbol;
3
- export type CustomAgentFactory = (id: string, name: string, description: string, prompt: string, defaultLLM: string) => CustomChatAgent;
3
+ export type CustomAgentFactory = (id: string, name: string, description: string, prompt: string, defaultLLM: string, showInChat?: boolean) => CustomChatAgent;
4
4
  //# sourceMappingURL=custom-agent-factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"custom-agent-factory.d.ts","sourceRoot":"","sources":["../../src/browser/custom-agent-factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,MAAM,kBAAkB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,eAAe,CAAC"}
1
+ {"version":3,"file":"custom-agent-factory.d.ts","sourceRoot":"","sources":["../../src/browser/custom-agent-factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,MAAM,kBAAkB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,eAAe,CAAC"}
@@ -28,7 +28,7 @@ let AICustomAgentsFrontendApplicationContribution = class AICustomAgentsFrontend
28
28
  onStart() {
29
29
  this.customizationService?.getCustomAgents().then(customAgents => {
30
30
  customAgents.forEach(agent => {
31
- this.customAgentFactory(agent.id, agent.name, agent.description, agent.prompt, agent.defaultLLM);
31
+ this.customAgentFactory(agent.id, agent.name, agent.description, agent.prompt, agent.defaultLLM, agent.showInChat);
32
32
  this.knownCustomAgents.set(agent.id, agent);
33
33
  });
34
34
  }).catch(e => {
@@ -46,7 +46,7 @@ let AICustomAgentsFrontendApplicationContribution = class AICustomAgentsFrontend
46
46
  });
47
47
  customAgentsToAdd
48
48
  .forEach(agent => {
49
- this.customAgentFactory(agent.id, agent.name, agent.description, agent.prompt, agent.defaultLLM);
49
+ this.customAgentFactory(agent.id, agent.name, agent.description, agent.prompt, agent.defaultLLM, agent.showInChat);
50
50
  this.knownCustomAgents.set(agent.id, agent);
51
51
  });
52
52
  }).catch(e => {
@@ -1 +1 @@
1
- {"version":3,"file":"custom-agent-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/custom-agent-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"custom-agent-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/custom-agent-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { AIVariableContext } from '@theia/ai-core';
2
2
  import { AIVariableDropResult, FrontendVariableContribution, FrontendVariableService } from '@theia/ai-core/lib/browser';
3
- import { ILogger, QuickInputService, URI } from '@theia/core';
3
+ import { ILogger, QuickInputService } from '@theia/core';
4
4
  import * as monaco from '@theia/monaco-editor-core';
5
5
  import { QuickFileSelectService } from '@theia/file-search/lib/browser/quick-file-select-service';
6
6
  import { WorkspaceService } from '@theia/workspace/lib/browser';
@@ -14,19 +14,19 @@ export declare class FileChatVariableContribution implements FrontendVariableCon
14
14
  registerVariables(service: FrontendVariableService): void;
15
15
  protected triggerArgumentPicker(): Promise<string | undefined>;
16
16
  protected imageArgumentPicker(): Promise<string | undefined>;
17
- protected provideArgumentCompletionItems(model: monaco.editor.ITextModel, position: monaco.Position, matchString?: string): Promise<monaco.languages.CompletionItem[] | undefined>;
18
17
  /**
19
- * Checks if a file is an image based on its extension.
18
+ * Read an image from the clipboard and return it as an ImageContextVariable argument string.
20
19
  */
21
- protected isImageFile(filePath: string): boolean;
20
+ protected readImageFromClipboard(): Promise<string | undefined>;
22
21
  /**
23
- * Determines the MIME type based on file extension.
22
+ * Convert a Blob to base64 string.
24
23
  */
25
- protected getMimeTypeFromExtension(filePath: string): string;
24
+ protected blobToBase64(blob: Blob): Promise<string>;
25
+ protected provideArgumentCompletionItems(model: monaco.editor.ITextModel, position: monaco.Position, matchString?: string): Promise<monaco.languages.CompletionItem[] | undefined>;
26
26
  /**
27
- * Converts a file to base64 data URL.
27
+ * Checks if a file is an image based on its extension.
28
28
  */
29
- protected fileToBase64(uri: URI): Promise<string>;
29
+ protected isImageFile(filePath: string): boolean;
30
30
  protected handleDrop(event: DragEvent, _: AIVariableContext): Promise<AIVariableDropResult | undefined>;
31
31
  }
32
32
  //# sourceMappingURL=file-chat-variable-contribution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-chat-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/file-chat-variable-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAA2C,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAA+B,oBAAoB,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEtJ,OAAO,EAAqB,OAAO,EAAO,iBAAiB,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAEtF,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAqB,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAKzE,qBACa,4BAA6B,YAAW,4BAA4B;IAE7E,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAG/C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;cAOzC,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;cAuBpD,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;cAwDlD,8BAA8B,CAC1C,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;IAkCzD;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMhD;;OAEG;IACH,SAAS,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAc5D;;OAEG;cACa,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;cAevC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;CAmDhH"}
1
+ {"version":3,"file":"file-chat-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/file-chat-variable-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,iBAAiB,EAA2C,MAAM,gBAAgB,CAAC;AAC5F,OAAO,EAA+B,oBAAoB,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAEtJ,OAAO,EAAqB,OAAO,EAAO,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEjF,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAqB,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAMzE,qBACa,4BAA6B,YAAW,4BAA4B;IAE7E,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAG/C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;cAOzC,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;cAuBpD,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAwElE;;OAEG;cACa,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAwBrE;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;cAcnC,8BAA8B,CAC1C,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,WAAW,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;IAkCzD;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;cAMhC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;CAsChH"}
@@ -28,6 +28,7 @@ const browser_2 = require("@theia/workspace/lib/browser");
28
28
  const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
29
29
  const ai_chat_frontend_contribution_1 = require("./ai-chat-frontend-contribution");
30
30
  const image_context_variable_1 = require("../common/image-context-variable");
31
+ const image_file_utils_1 = require("./image-file-utils");
31
32
  const browser_3 = require("@theia/core/lib/browser");
32
33
  let FileChatVariableContribution = class FileChatVariableContribution {
33
34
  registerVariables(service) {
@@ -58,22 +59,32 @@ let FileChatVariableContribution = class FileChatVariableContribution {
58
59
  async imageArgumentPicker() {
59
60
  const quickPick = this.quickInputService.createQuickPick();
60
61
  quickPick.title = core_1.nls.localize('theia/ai/chat/selectImageFile', 'Select an image file');
62
+ // Create "From Clipboard" option
63
+ const clipboardOption = {
64
+ label: core_1.nls.localize('theia/ai/chat/fromClipboard', '$(clippy) From Clipboard'),
65
+ description: core_1.nls.localize('theia/ai/chat/fromClipboardDescription', 'Paste image from clipboard'),
66
+ alwaysShow: true,
67
+ isClipboardOption: true
68
+ };
61
69
  // Get all files and filter only image files
62
70
  const allPicks = await this.quickFileSelectService.getPicks();
63
- quickPick.items = allPicks.filter(item => {
71
+ const filePicks = allPicks.filter(item => {
64
72
  if (quick_file_select_service_1.FileQuickPickItem.is(item)) {
65
73
  return this.isImageFile(item.uri.path.toString());
66
74
  }
67
75
  return false;
68
76
  });
77
+ quickPick.items = [clipboardOption, ...filePicks];
69
78
  const updateItems = async (value) => {
70
79
  const filteredPicks = await this.quickFileSelectService.getPicks(value, core_1.CancellationToken.None);
71
- quickPick.items = filteredPicks.filter(item => {
80
+ const filteredFilePicks = filteredPicks.filter(item => {
72
81
  if (quick_file_select_service_1.FileQuickPickItem.is(item)) {
73
82
  return this.isImageFile(item.uri.path.toString());
74
83
  }
75
84
  return false;
76
85
  });
86
+ // Keep clipboard option at top when filtering
87
+ quickPick.items = [clipboardOption, ...filteredFilePicks];
77
88
  };
78
89
  const onChangeListener = quickPick.onDidChangeValue(updateItems);
79
90
  quickPick.show();
@@ -81,29 +92,74 @@ let FileChatVariableContribution = class FileChatVariableContribution {
81
92
  quickPick.onDispose(onChangeListener.dispose);
82
93
  quickPick.onDidAccept(async () => {
83
94
  const selectedItem = quickPick.selectedItems[0];
95
+ // Handle clipboard option
96
+ if (selectedItem && 'isClipboardOption' in selectedItem) {
97
+ quickPick.dispose();
98
+ const clipboardResult = await this.readImageFromClipboard();
99
+ resolve(clipboardResult);
100
+ return;
101
+ }
84
102
  if (selectedItem && quick_file_select_service_1.FileQuickPickItem.is(selectedItem)) {
85
103
  quickPick.dispose();
86
104
  const filePath = await this.wsService.getWorkspaceRelativePath(selectedItem.uri);
87
105
  const fileName = selectedItem.uri.displayName;
88
- const base64Data = await this.fileToBase64(selectedItem.uri);
89
- if (!base64Data) {
90
- resolve(undefined);
91
- return;
92
- }
93
- const mimeType = this.getMimeTypeFromExtension(selectedItem.uri.path.toString());
106
+ const base64Data = await (0, image_file_utils_1.fileToBase64)(selectedItem.uri, this.fileService, this.logger);
107
+ const mimeType = (0, image_file_utils_1.getMimeTypeFromExtension)(selectedItem.uri.path.toString());
94
108
  // Create the argument string in the required format
95
109
  const imageVarArgs = {
96
110
  name: fileName,
97
111
  wsRelativePath: filePath,
98
112
  data: base64Data,
99
- mimeType: mimeType,
100
- origin: 'context'
113
+ mimeType: mimeType
101
114
  };
102
115
  resolve(image_context_variable_1.ImageContextVariable.createArgString(imageVarArgs));
103
116
  }
104
117
  });
105
118
  });
106
119
  }
120
+ /**
121
+ * Read an image from the clipboard and return it as an ImageContextVariable argument string.
122
+ */
123
+ async readImageFromClipboard() {
124
+ try {
125
+ const clipboardItems = await navigator.clipboard.read();
126
+ for (const item of clipboardItems) {
127
+ const imageType = item.types.find(type => type.startsWith('image/'));
128
+ if (imageType) {
129
+ const blob = await item.getType(imageType);
130
+ const base64Data = await this.blobToBase64(blob);
131
+ const imageVarArgs = {
132
+ name: `clipboard-image-${Date.now()}.${imageType.split('/')[1]}`,
133
+ data: base64Data,
134
+ mimeType: imageType
135
+ };
136
+ return image_context_variable_1.ImageContextVariable.createArgString(imageVarArgs);
137
+ }
138
+ }
139
+ this.logger.warn('No image found in clipboard');
140
+ return undefined;
141
+ }
142
+ catch (error) {
143
+ this.logger.error('Failed to read image from clipboard:', error);
144
+ return undefined;
145
+ }
146
+ }
147
+ /**
148
+ * Convert a Blob to base64 string.
149
+ */
150
+ blobToBase64(blob) {
151
+ return new Promise((resolve, reject) => {
152
+ const reader = new FileReader();
153
+ reader.onload = () => {
154
+ const dataUrl = reader.result;
155
+ // Extract base64 data by removing the data URL prefix
156
+ const base64Data = dataUrl.substring(dataUrl.indexOf(',') + 1);
157
+ resolve(base64Data);
158
+ };
159
+ reader.onerror = () => reject(reader.error);
160
+ reader.readAsDataURL(blob);
161
+ });
162
+ }
107
163
  async provideArgumentCompletionItems(model, position, matchString) {
108
164
  const context = browser_1.AIVariableCompletionContext.get(file_variable_contribution_1.FILE_VARIABLE.name, model, position, matchString);
109
165
  if (!context) {
@@ -143,40 +199,6 @@ let FileChatVariableContribution = class FileChatVariableContribution {
143
199
  const extension = filePath.toLowerCase().substring(filePath.lastIndexOf('.'));
144
200
  return imageExtensions.includes(extension);
145
201
  }
146
- /**
147
- * Determines the MIME type based on file extension.
148
- */
149
- getMimeTypeFromExtension(filePath) {
150
- const extension = filePath.toLowerCase().substring(filePath.lastIndexOf('.'));
151
- const mimeTypes = {
152
- '.jpg': 'image/jpeg',
153
- '.jpeg': 'image/jpeg',
154
- '.png': 'image/png',
155
- '.gif': 'image/gif',
156
- '.bmp': 'image/bmp',
157
- '.svg': 'image/svg+xml',
158
- '.webp': 'image/webp'
159
- };
160
- return mimeTypes[extension] || 'application/octet-stream';
161
- }
162
- /**
163
- * Converts a file to base64 data URL.
164
- */
165
- async fileToBase64(uri) {
166
- try {
167
- const fileContent = await this.fileService.readFile(uri);
168
- const uint8Array = new Uint8Array(fileContent.value.buffer);
169
- let binary = '';
170
- for (let i = 0; i < uint8Array.length; i++) {
171
- binary += String.fromCharCode(uint8Array[i]);
172
- }
173
- return btoa(binary);
174
- }
175
- catch (error) {
176
- this.logger.error('Error reading file content:', error);
177
- return '';
178
- }
179
- }
180
202
  async handleDrop(event, _) {
181
203
  if (!event.dataTransfer) {
182
204
  return undefined;
@@ -192,25 +214,13 @@ let FileChatVariableContribution = class FileChatVariableContribution {
192
214
  if (await this.fileService.exists(uri)) {
193
215
  const wsRelativePath = await this.wsService.getWorkspaceRelativePath(uri);
194
216
  const fileName = uri.displayName;
195
- if (!wsRelativePath) {
196
- continue;
197
- }
198
- if (this.isImageFile(wsRelativePath)) {
199
- const base64Data = await this.fileToBase64(uri);
200
- if (!base64Data) {
201
- continue;
202
- }
203
- const mimeType = this.getMimeTypeFromExtension(wsRelativePath);
204
- variables.push(image_context_variable_1.ImageContextVariable.createRequest({
205
- name: fileName,
206
- wsRelativePath,
207
- data: base64Data,
208
- mimeType,
209
- origin: 'temporary'
210
- }));
217
+ if (wsRelativePath && this.isImageFile(wsRelativePath)) {
218
+ // Create a path-based reference - the image will be resolved on-demand
219
+ // This avoids eagerly loading base64 data for file-based images
220
+ variables.push(image_context_variable_1.ImageContextVariable.createPathBasedRequest(wsRelativePath, fileName));
211
221
  // we do not want to push a text for image variables
212
222
  }
213
- else {
223
+ else if (wsRelativePath) {
214
224
  variables.push({
215
225
  variable: file_variable_contribution_1.FILE_VARIABLE,
216
226
  arg: wsRelativePath
@@ -1 +1 @@
1
- {"version":3,"file":"file-chat-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/file-chat-variable-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-chat-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/file-chat-variable-contribution.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,25 @@
1
1
  import { AIVariableContext, AIVariableContribution, AIVariableOpener, AIVariableResolutionRequest, AIVariableResolver, ResolvedAIContextVariable } from '@theia/ai-core';
2
2
  import { FrontendVariableService, AIVariablePasteResult } from '@theia/ai-core/lib/browser';
3
- import { URI } from '@theia/core';
3
+ import * as monaco from '@theia/monaco-editor-core';
4
+ import { ILogger, URI } from '@theia/core';
4
5
  import { LabelProvider, LabelProviderContribution, OpenerService } from '@theia/core/lib/browser';
5
6
  import { FileService } from '@theia/filesystem/lib/browser/file-service';
6
7
  import { WorkspaceService } from '@theia/workspace/lib/browser';
7
- import { ImageContextVariable, ImageContextVariableRequest } from '../common/image-context-variable';
8
+ import { ImageContextVariable, ImageContextVariableRequest, ResolvedImageContextVariable } from '../common/image-context-variable';
9
+ import { PendingImageRegistry } from './pending-image-registry';
8
10
  export declare class ImageContextVariableContribution implements AIVariableContribution, AIVariableResolver, AIVariableOpener, LabelProviderContribution {
9
11
  protected readonly fileService: FileService;
10
12
  protected readonly wsService: WorkspaceService;
11
13
  protected readonly openerService: OpenerService;
12
14
  protected readonly labelProvider: LabelProvider;
15
+ protected readonly logger: ILogger;
16
+ protected readonly pendingImageRegistry: PendingImageRegistry;
13
17
  registerVariables(service: FrontendVariableService): void;
14
18
  canResolve(request: AIVariableResolutionRequest, _: AIVariableContext): Promise<number>;
15
- resolve(request: AIVariableResolutionRequest, _: AIVariableContext): Promise<ResolvedAIContextVariable | undefined>;
19
+ resolve(request: AIVariableResolutionRequest, context: AIVariableContext): Promise<ResolvedAIContextVariable | undefined>;
20
+ protected resolveFromRegistry(shortId: string, context: AIVariableContext): Promise<ResolvedAIContextVariable | undefined>;
21
+ protected createResolvedVariable(request: ImageContextVariableRequest, resolved: ResolvedImageContextVariable): ResolvedAIContextVariable;
22
+ protected resolveFromPath(variable: ImageContextVariable): Promise<ResolvedImageContextVariable | undefined>;
16
23
  canOpen(request: AIVariableResolutionRequest, context: AIVariableContext): Promise<number>;
17
24
  open(request: ImageContextVariableRequest, context: AIVariableContext): Promise<void>;
18
25
  protected toUri(request: ImageContextVariableRequest): Promise<URI | undefined>;
@@ -24,5 +31,11 @@ export declare class ImageContextVariableContribution implements AIVariableContr
24
31
  getIcon(element: ImageContextVariableRequest): string | undefined;
25
32
  getName(element: ImageContextVariableRequest): string | undefined;
26
33
  getDetails(element: ImageContextVariableRequest): string | undefined;
34
+ /**
35
+ * Provides completion items for pending images in the current chat session.
36
+ * This allows users to discover available `img_1`, `img_2`, etc. short IDs
37
+ * when typing `#imageContext:`.
38
+ */
39
+ protected provideArgumentCompletionItems(model: monaco.editor.ITextModel, position: monaco.Position, matchString?: string): Promise<monaco.languages.CompletionItem[] | undefined>;
27
40
  }
28
41
  //# sourceMappingURL=image-context-variable-contribution.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-context-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/image-context-variable-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,iBAAiB,EAAE,sBAAsB,EACzC,gBAAgB,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,yBAAyB,EAC/F,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAQ,GAAG,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAQ,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExG,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAA0B,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAE7H,qBACa,gCAAiC,YAAW,sBAAsB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,yBAAyB;IAE5I,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;IAG/C,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAEhD,iBAAiB,CAAC,OAAO,EAAE,uBAAuB,GAAG,IAAI;IAMnD,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvF,OAAO,CAAC,OAAO,EAAE,2BAA2B,EAAE,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAInH,OAAO,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1F,IAAI,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;cAQ3E,KAAK,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;IAK/E,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC;IA8BhH,OAAO,CAAC,iBAAiB;cAeT,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;IAkBvE,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIlC,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,GAAG,SAAS;IAQrE,OAAO,CAAC,OAAO,EAAE,2BAA2B,GAAG,MAAM,GAAG,SAAS;IAKjE,OAAO,CAAC,OAAO,EAAE,2BAA2B,GAAG,MAAM,GAAG,SAAS;IAIjE,UAAU,CAAC,OAAO,EAAE,2BAA2B,GAAG,MAAM,GAAG,SAAS;CAIvE"}
1
+ {"version":3,"file":"image-context-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/image-context-variable-contribution.ts"],"names":[],"mappings":"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"}