@theia/ai-core 1.67.0-next.13 → 1.67.0-next.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/data/prompttemplate.tmLanguage.json +3 -0
- package/package.json +9 -9
- package/src/browser/frontend-language-model-alias-registry.ts +11 -11
- package/src/common/agent-service.ts +6 -6
- package/src/common/prompt-service.ts +6 -2
- package/lib/browser/agent-completion-notification-service.d.ts +0 -69
- package/lib/browser/agent-completion-notification-service.d.ts.map +0 -1
- package/lib/browser/agent-completion-notification-service.js +0 -187
- package/lib/browser/agent-completion-notification-service.js.map +0 -1
- package/lib/browser/ai-activation-service.d.ts +0 -31
- package/lib/browser/ai-activation-service.d.ts.map +0 -1
- package/lib/browser/ai-activation-service.js +0 -56
- package/lib/browser/ai-activation-service.js.map +0 -1
- package/lib/browser/ai-command-handler-factory.d.ts +0 -4
- package/lib/browser/ai-command-handler-factory.d.ts.map +0 -1
- package/lib/browser/ai-command-handler-factory.js +0 -20
- package/lib/browser/ai-command-handler-factory.js.map +0 -1
- package/lib/browser/ai-core-command-contribution.d.ts +0 -8
- package/lib/browser/ai-core-command-contribution.d.ts.map +0 -1
- package/lib/browser/ai-core-command-contribution.js +0 -44
- package/lib/browser/ai-core-command-contribution.js.map +0 -1
- package/lib/browser/ai-core-frontend-application-contribution.d.ts +0 -10
- package/lib/browser/ai-core-frontend-application-contribution.d.ts.map +0 -1
- package/lib/browser/ai-core-frontend-application-contribution.js +0 -46
- package/lib/browser/ai-core-frontend-application-contribution.js.map +0 -1
- package/lib/browser/ai-core-frontend-module.d.ts +0 -4
- package/lib/browser/ai-core-frontend-module.d.ts.map +0 -1
- package/lib/browser/ai-core-frontend-module.js +0 -137
- package/lib/browser/ai-core-frontend-module.js.map +0 -1
- package/lib/browser/ai-settings-service.d.ts +0 -16
- package/lib/browser/ai-settings-service.d.ts.map +0 -1
- package/lib/browser/ai-settings-service.js +0 -78
- package/lib/browser/ai-settings-service.js.map +0 -1
- package/lib/browser/ai-variable-uri-label-provider.d.ts +0 -17
- package/lib/browser/ai-variable-uri-label-provider.d.ts.map +0 -1
- package/lib/browser/ai-variable-uri-label-provider.js +0 -85
- package/lib/browser/ai-variable-uri-label-provider.js.map +0 -1
- package/lib/browser/ai-view-contribution.d.ts +0 -14
- package/lib/browser/ai-view-contribution.d.ts.map +0 -1
- package/lib/browser/ai-view-contribution.js +0 -87
- package/lib/browser/ai-view-contribution.js.map +0 -1
- package/lib/browser/file-variable-contribution.d.ts +0 -23
- package/lib/browser/file-variable-contribution.d.ts.map +0 -1
- package/lib/browser/file-variable-contribution.js +0 -114
- package/lib/browser/file-variable-contribution.js.map +0 -1
- package/lib/browser/frontend-language-model-alias-registry.d.ts +0 -31
- package/lib/browser/frontend-language-model-alias-registry.d.ts.map +0 -1
- package/lib/browser/frontend-language-model-alias-registry.js +0 -170
- package/lib/browser/frontend-language-model-alias-registry.js.map +0 -1
- package/lib/browser/frontend-language-model-registry.d.ts +0 -49
- package/lib/browser/frontend-language-model-registry.d.ts.map +0 -1
- package/lib/browser/frontend-language-model-registry.js +0 -387
- package/lib/browser/frontend-language-model-registry.js.map +0 -1
- package/lib/browser/frontend-language-model-registry.spec.d.ts +0 -2
- package/lib/browser/frontend-language-model-registry.spec.d.ts.map +0 -1
- package/lib/browser/frontend-language-model-registry.spec.js +0 -248
- package/lib/browser/frontend-language-model-registry.spec.js.map +0 -1
- package/lib/browser/frontend-language-model-service.d.ts +0 -10
- package/lib/browser/frontend-language-model-service.d.ts.map +0 -1
- package/lib/browser/frontend-language-model-service.js +0 -66
- package/lib/browser/frontend-language-model-service.js.map +0 -1
- package/lib/browser/frontend-prompt-customization-service.d.ts +0 -271
- package/lib/browser/frontend-prompt-customization-service.d.ts.map +0 -1
- package/lib/browser/frontend-prompt-customization-service.js +0 -869
- package/lib/browser/frontend-prompt-customization-service.js.map +0 -1
- package/lib/browser/frontend-prompt-customization-service.spec.d.ts +0 -2
- package/lib/browser/frontend-prompt-customization-service.spec.d.ts.map +0 -1
- package/lib/browser/frontend-prompt-customization-service.spec.js +0 -127
- package/lib/browser/frontend-prompt-customization-service.spec.js.map +0 -1
- package/lib/browser/frontend-variable-service.d.ts +0 -61
- package/lib/browser/frontend-variable-service.d.ts.map +0 -1
- package/lib/browser/frontend-variable-service.js +0 -165
- package/lib/browser/frontend-variable-service.js.map +0 -1
- package/lib/browser/index.d.ts +0 -20
- package/lib/browser/index.d.ts.map +0 -1
- package/lib/browser/index.js +0 -38
- package/lib/browser/index.js.map +0 -1
- package/lib/browser/open-editors-variable-contribution.d.ts +0 -17
- package/lib/browser/open-editors-variable-contribution.d.ts.map +0 -1
- package/lib/browser/open-editors-variable-contribution.js +0 -84
- package/lib/browser/open-editors-variable-contribution.js.map +0 -1
- package/lib/browser/os-notification-service.d.ts +0 -96
- package/lib/browser/os-notification-service.d.ts.map +0 -1
- package/lib/browser/os-notification-service.js +0 -222
- package/lib/browser/os-notification-service.js.map +0 -1
- package/lib/browser/prompttemplate-contribution.d.ts +0 -29
- package/lib/browser/prompttemplate-contribution.d.ts.map +0 -1
- package/lib/browser/prompttemplate-contribution.js +0 -243
- package/lib/browser/prompttemplate-contribution.js.map +0 -1
- package/lib/browser/prompttemplate-parser.d.ts +0 -36
- package/lib/browser/prompttemplate-parser.d.ts.map +0 -1
- package/lib/browser/prompttemplate-parser.js +0 -94
- package/lib/browser/prompttemplate-parser.js.map +0 -1
- package/lib/browser/theia-variable-contribution.d.ts +0 -26
- package/lib/browser/theia-variable-contribution.d.ts.map +0 -1
- package/lib/browser/theia-variable-contribution.js +0 -146
- package/lib/browser/theia-variable-contribution.js.map +0 -1
- package/lib/browser/token-usage-frontend-service-impl.d.ts +0 -25
- package/lib/browser/token-usage-frontend-service-impl.d.ts.map +0 -1
- package/lib/browser/token-usage-frontend-service-impl.js +0 -138
- package/lib/browser/token-usage-frontend-service-impl.js.map +0 -1
- package/lib/browser/token-usage-frontend-service.d.ts +0 -33
- package/lib/browser/token-usage-frontend-service.d.ts.map +0 -1
- package/lib/browser/token-usage-frontend-service.js +0 -23
- package/lib/browser/token-usage-frontend-service.js.map +0 -1
- package/lib/browser/window-blink-service.d.ts +0 -41
- package/lib/browser/window-blink-service.d.ts.map +0 -1
- package/lib/browser/window-blink-service.js +0 -174
- package/lib/browser/window-blink-service.js.map +0 -1
- package/lib/common/agent-preferences.d.ts +0 -4
- package/lib/common/agent-preferences.d.ts.map +0 -1
- package/lib/common/agent-preferences.js +0 -84
- package/lib/common/agent-preferences.js.map +0 -1
- package/lib/common/agent-service.d.ts +0 -66
- package/lib/common/agent-service.d.ts.map +0 -1
- package/lib/common/agent-service.js +0 -104
- package/lib/common/agent-service.js.map +0 -1
- package/lib/common/agent.d.ts +0 -72
- package/lib/common/agent.d.ts.map +0 -1
- package/lib/common/agent.js +0 -20
- package/lib/common/agent.js.map +0 -1
- package/lib/common/agents-variable-contribution.d.ts +0 -19
- package/lib/common/agents-variable-contribution.d.ts.map +0 -1
- package/lib/common/agents-variable-contribution.js +0 -57
- package/lib/common/agents-variable-contribution.js.map +0 -1
- package/lib/common/ai-core-preferences.d.ts +0 -48
- package/lib/common/ai-core-preferences.d.ts.map +0 -1
- package/lib/common/ai-core-preferences.js +0 -204
- package/lib/common/ai-core-preferences.js.map +0 -1
- package/lib/common/ai-variable-resource.d.ts +0 -18
- package/lib/common/ai-variable-resource.d.ts.map +0 -1
- package/lib/common/ai-variable-resource.js +0 -103
- package/lib/common/ai-variable-resource.js.map +0 -1
- package/lib/common/configurable-in-memory-resources.d.ts +0 -47
- package/lib/common/configurable-in-memory-resources.d.ts.map +0 -1
- package/lib/common/configurable-in-memory-resources.js +0 -154
- package/lib/common/configurable-in-memory-resources.js.map +0 -1
- package/lib/common/index.d.ts +0 -22
- package/lib/common/index.d.ts.map +0 -1
- package/lib/common/index.js +0 -40
- package/lib/common/index.js.map +0 -1
- package/lib/common/language-model-alias.d.ts +0 -58
- package/lib/common/language-model-alias.d.ts.map +0 -1
- package/lib/common/language-model-alias.js +0 -20
- package/lib/common/language-model-alias.js.map +0 -1
- package/lib/common/language-model-delegate.d.ts +0 -25
- package/lib/common/language-model-delegate.d.ts.map +0 -1
- package/lib/common/language-model-delegate.js +0 -26
- package/lib/common/language-model-delegate.js.map +0 -1
- package/lib/common/language-model-interaction-model.d.ts +0 -74
- package/lib/common/language-model-interaction-model.d.ts.map +0 -1
- package/lib/common/language-model-interaction-model.js +0 -3
- package/lib/common/language-model-interaction-model.js.map +0 -1
- package/lib/common/language-model-service.d.ts +0 -38
- package/lib/common/language-model-service.d.ts.map +0 -1
- package/lib/common/language-model-service.js +0 -128
- package/lib/common/language-model-service.js.map +0 -1
- package/lib/common/language-model-util.d.ts +0 -17
- package/lib/common/language-model-util.d.ts.map +0 -1
- package/lib/common/language-model-util.js +0 -82
- package/lib/common/language-model-util.js.map +0 -1
- package/lib/common/language-model.d.ts +0 -285
- package/lib/common/language-model.d.ts.map +0 -1
- package/lib/common/language-model.js +0 -248
- package/lib/common/language-model.js.map +0 -1
- package/lib/common/language-model.spec.d.ts +0 -2
- package/lib/common/language-model.spec.d.ts.map +0 -1
- package/lib/common/language-model.spec.js +0 -62
- package/lib/common/language-model.spec.js.map +0 -1
- package/lib/common/notification-types.d.ts +0 -7
- package/lib/common/notification-types.d.ts.map +0 -1
- package/lib/common/notification-types.js +0 -29
- package/lib/common/notification-types.js.map +0 -1
- package/lib/common/prompt-service-util.d.ts +0 -8
- package/lib/common/prompt-service-util.d.ts.map +0 -1
- package/lib/common/prompt-service-util.js +0 -34
- package/lib/common/prompt-service-util.js.map +0 -1
- package/lib/common/prompt-service.d.ts +0 -466
- package/lib/common/prompt-service.d.ts.map +0 -1
- package/lib/common/prompt-service.js +0 -653
- package/lib/common/prompt-service.js.map +0 -1
- package/lib/common/prompt-service.spec.d.ts +0 -2
- package/lib/common/prompt-service.spec.d.ts.map +0 -1
- package/lib/common/prompt-service.spec.js +0 -431
- package/lib/common/prompt-service.spec.js.map +0 -1
- package/lib/common/prompt-text.d.ts +0 -8
- package/lib/common/prompt-text.d.ts.map +0 -1
- package/lib/common/prompt-text.js +0 -27
- package/lib/common/prompt-text.js.map +0 -1
- package/lib/common/prompt-variable-contribution.d.ts +0 -18
- package/lib/common/prompt-variable-contribution.d.ts.map +0 -1
- package/lib/common/prompt-variable-contribution.js +0 -207
- package/lib/common/prompt-variable-contribution.js.map +0 -1
- package/lib/common/prompt-variable-contribution.spec.d.ts +0 -2
- package/lib/common/prompt-variable-contribution.spec.d.ts.map +0 -1
- package/lib/common/prompt-variable-contribution.spec.js +0 -163
- package/lib/common/prompt-variable-contribution.spec.js.map +0 -1
- package/lib/common/protocol.d.ts +0 -25
- package/lib/common/protocol.d.ts.map +0 -1
- package/lib/common/protocol.js +0 -22
- package/lib/common/protocol.js.map +0 -1
- package/lib/common/settings-service.d.ts +0 -29
- package/lib/common/settings-service.d.ts.map +0 -1
- package/lib/common/settings-service.js +0 -5
- package/lib/common/settings-service.js.map +0 -1
- package/lib/common/today-variable-contribution.d.ts +0 -17
- package/lib/common/today-variable-contribution.d.ts.map +0 -1
- package/lib/common/today-variable-contribution.js +0 -68
- package/lib/common/today-variable-contribution.js.map +0 -1
- package/lib/common/token-usage-service.d.ts +0 -43
- package/lib/common/token-usage-service.d.ts.map +0 -1
- package/lib/common/token-usage-service.js +0 -20
- package/lib/common/token-usage-service.js.map +0 -1
- package/lib/common/tool-invocation-registry.d.ts +0 -66
- package/lib/common/tool-invocation-registry.d.ts.map +0 -1
- package/lib/common/tool-invocation-registry.js +0 -101
- package/lib/common/tool-invocation-registry.js.map +0 -1
- package/lib/common/variable-service.d.ts +0 -172
- package/lib/common/variable-service.d.ts.map +0 -1
- package/lib/common/variable-service.js +0 -287
- package/lib/common/variable-service.js.map +0 -1
- package/lib/common/variable-service.spec.d.ts +0 -2
- package/lib/common/variable-service.spec.d.ts.map +0 -1
- package/lib/common/variable-service.spec.js +0 -237
- package/lib/common/variable-service.spec.js.map +0 -1
- package/lib/node/ai-core-backend-module.d.ts +0 -4
- package/lib/node/ai-core-backend-module.d.ts.map +0 -1
- package/lib/node/ai-core-backend-module.js +0 -65
- package/lib/node/ai-core-backend-module.js.map +0 -1
- package/lib/node/backend-language-model-registry.d.ts +0 -13
- package/lib/node/backend-language-model-registry.d.ts.map +0 -1
- package/lib/node/backend-language-model-registry.js +0 -68
- package/lib/node/backend-language-model-registry.js.map +0 -1
- package/lib/node/language-model-frontend-delegate.d.ts +0 -18
- package/lib/node/language-model-frontend-delegate.d.ts.map +0 -1
- package/lib/node/language-model-frontend-delegate.js +0 -109
- package/lib/node/language-model-frontend-delegate.js.map +0 -1
- package/lib/node/token-usage-service-impl.d.ts +0 -23
- package/lib/node/token-usage-service-impl.d.ts.map +0 -1
- package/lib/node/token-usage-service-impl.js +0 -78
- package/lib/node/token-usage-service-impl.js.map +0 -1
- package/lib/node/tool-request-parameters.spec.d.ts +0 -2
- package/lib/node/tool-request-parameters.spec.d.ts.map +0 -1
- package/lib/node/tool-request-parameters.spec.js +0 -116
- package/lib/node/tool-request-parameters.spec.js.map +0 -1
|
@@ -1,287 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2024 EclipseSource GmbH.
|
|
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
|
-
/*---------------------------------------------------------------------------------------------
|
|
18
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
19
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
20
|
-
*--------------------------------------------------------------------------------------------*/
|
|
21
|
-
// Partially copied from https://github.com/microsoft/vscode/blob/a2cab7255c0df424027be05d58e1b7b941f4ea60/src/vs/workbench/contrib/chat/common/chatVariables.ts
|
|
22
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.DefaultAIVariableService = exports.getAllResolvedAIVariables = exports.createAIResolveVariableCache = exports.AIVariableContribution = exports.AIVariableService = exports.AIVariableResolutionRequest = exports.ResolvedAIContextVariable = exports.ResolvedAIVariable = exports.AIContextVariable = exports.AIVariable = void 0;
|
|
24
|
-
const tslib_1 = require("tslib");
|
|
25
|
-
const core_1 = require("@theia/core");
|
|
26
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
27
|
-
const prompt_text_1 = require("./prompt-text");
|
|
28
|
-
var AIVariable;
|
|
29
|
-
(function (AIVariable) {
|
|
30
|
-
function is(arg) {
|
|
31
|
-
return !!arg && typeof arg === 'object' &&
|
|
32
|
-
'id' in arg &&
|
|
33
|
-
'name' in arg &&
|
|
34
|
-
'description' in arg;
|
|
35
|
-
}
|
|
36
|
-
AIVariable.is = is;
|
|
37
|
-
})(AIVariable || (exports.AIVariable = AIVariable = {}));
|
|
38
|
-
var AIContextVariable;
|
|
39
|
-
(function (AIContextVariable) {
|
|
40
|
-
function is(arg) {
|
|
41
|
-
return AIVariable.is(arg) && 'isContextVariable' in arg && arg.isContextVariable === true;
|
|
42
|
-
}
|
|
43
|
-
AIContextVariable.is = is;
|
|
44
|
-
})(AIContextVariable || (exports.AIContextVariable = AIContextVariable = {}));
|
|
45
|
-
var ResolvedAIVariable;
|
|
46
|
-
(function (ResolvedAIVariable) {
|
|
47
|
-
function is(arg) {
|
|
48
|
-
return !!arg && typeof arg === 'object' &&
|
|
49
|
-
'variable' in arg &&
|
|
50
|
-
'value' in arg &&
|
|
51
|
-
typeof arg.variable === 'object' &&
|
|
52
|
-
typeof arg.value === 'string';
|
|
53
|
-
}
|
|
54
|
-
ResolvedAIVariable.is = is;
|
|
55
|
-
})(ResolvedAIVariable || (exports.ResolvedAIVariable = ResolvedAIVariable = {}));
|
|
56
|
-
var ResolvedAIContextVariable;
|
|
57
|
-
(function (ResolvedAIContextVariable) {
|
|
58
|
-
function is(arg) {
|
|
59
|
-
return ResolvedAIVariable.is(arg) &&
|
|
60
|
-
'contextValue' in arg &&
|
|
61
|
-
typeof arg.contextValue === 'string';
|
|
62
|
-
}
|
|
63
|
-
ResolvedAIContextVariable.is = is;
|
|
64
|
-
})(ResolvedAIContextVariable || (exports.ResolvedAIContextVariable = ResolvedAIContextVariable = {}));
|
|
65
|
-
var AIVariableResolutionRequest;
|
|
66
|
-
(function (AIVariableResolutionRequest) {
|
|
67
|
-
function is(arg) {
|
|
68
|
-
return !!arg && typeof arg === 'object' &&
|
|
69
|
-
'variable' in arg &&
|
|
70
|
-
typeof arg.variable.name === 'string';
|
|
71
|
-
}
|
|
72
|
-
AIVariableResolutionRequest.is = is;
|
|
73
|
-
function fromResolved(arg) {
|
|
74
|
-
return {
|
|
75
|
-
variable: arg.variable,
|
|
76
|
-
arg: arg.arg
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
AIVariableResolutionRequest.fromResolved = fromResolved;
|
|
80
|
-
})(AIVariableResolutionRequest || (exports.AIVariableResolutionRequest = AIVariableResolutionRequest = {}));
|
|
81
|
-
function isResolverWithDependencies(resolver) {
|
|
82
|
-
return resolver !== undefined && resolver.resolve.length >= 3;
|
|
83
|
-
}
|
|
84
|
-
exports.AIVariableService = Symbol('AIVariableService');
|
|
85
|
-
/** Contributions on the frontend can optionally implement `FrontendVariableContribution`. */
|
|
86
|
-
exports.AIVariableContribution = Symbol('AIVariableContribution');
|
|
87
|
-
/**
|
|
88
|
-
* Creates a new, empty cache for AI variable resolution to hand into `AIVariableService.resolveVariable`.
|
|
89
|
-
*/
|
|
90
|
-
function createAIResolveVariableCache() {
|
|
91
|
-
return new Map();
|
|
92
|
-
}
|
|
93
|
-
exports.createAIResolveVariableCache = createAIResolveVariableCache;
|
|
94
|
-
/** Utility function to get all resolved AI variables from a {@link ResolveAIVariableCache} */
|
|
95
|
-
async function getAllResolvedAIVariables(cache) {
|
|
96
|
-
const resolvedVariables = [];
|
|
97
|
-
for (const cacheEntry of cache.values()) {
|
|
98
|
-
if (!cacheEntry.inProgress) {
|
|
99
|
-
const resolvedVariable = await cacheEntry.promise;
|
|
100
|
-
if (resolvedVariable) {
|
|
101
|
-
resolvedVariables.push(resolvedVariable);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return resolvedVariables;
|
|
106
|
-
}
|
|
107
|
-
exports.getAllResolvedAIVariables = getAllResolvedAIVariables;
|
|
108
|
-
let DefaultAIVariableService = class DefaultAIVariableService {
|
|
109
|
-
constructor(contributionProvider, logger) {
|
|
110
|
-
this.contributionProvider = contributionProvider;
|
|
111
|
-
this.logger = logger;
|
|
112
|
-
this.variables = new Map();
|
|
113
|
-
this.resolvers = new Map();
|
|
114
|
-
this.argPickers = new Map();
|
|
115
|
-
this.openers = new Map();
|
|
116
|
-
this.argCompletionProviders = new Map();
|
|
117
|
-
this.onDidChangeVariablesEmitter = new core_1.Emitter();
|
|
118
|
-
this.onDidChangeVariables = this.onDidChangeVariablesEmitter.event;
|
|
119
|
-
}
|
|
120
|
-
initContributions() {
|
|
121
|
-
this.contributionProvider.getContributions().forEach(contribution => contribution.registerVariables(this));
|
|
122
|
-
}
|
|
123
|
-
getKey(name) {
|
|
124
|
-
return `${name.toLowerCase()}`;
|
|
125
|
-
}
|
|
126
|
-
async getResolver(name, arg, context) {
|
|
127
|
-
const resolvers = await this.prioritize(name, arg, context);
|
|
128
|
-
return resolvers[0];
|
|
129
|
-
}
|
|
130
|
-
getResolvers(name) {
|
|
131
|
-
var _a;
|
|
132
|
-
return (_a = this.resolvers.get(this.getKey(name))) !== null && _a !== void 0 ? _a : [];
|
|
133
|
-
}
|
|
134
|
-
async prioritize(name, arg, context) {
|
|
135
|
-
const variable = this.getVariable(name);
|
|
136
|
-
if (!variable) {
|
|
137
|
-
return [];
|
|
138
|
-
}
|
|
139
|
-
const prioritized = await core_1.Prioritizeable.prioritizeAll(this.getResolvers(name), async (resolver) => {
|
|
140
|
-
try {
|
|
141
|
-
return await resolver.canResolve({ variable, arg }, context);
|
|
142
|
-
}
|
|
143
|
-
catch {
|
|
144
|
-
return 0;
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
return prioritized.map(p => p.value);
|
|
148
|
-
}
|
|
149
|
-
hasVariable(name) {
|
|
150
|
-
return !!this.getVariable(name);
|
|
151
|
-
}
|
|
152
|
-
getVariable(name) {
|
|
153
|
-
return this.variables.get(this.getKey(name));
|
|
154
|
-
}
|
|
155
|
-
getVariables() {
|
|
156
|
-
return [...this.variables.values()];
|
|
157
|
-
}
|
|
158
|
-
getContextVariables() {
|
|
159
|
-
return this.getVariables().filter(AIContextVariable.is);
|
|
160
|
-
}
|
|
161
|
-
registerVariable(variable) {
|
|
162
|
-
const key = this.getKey(variable.name);
|
|
163
|
-
if (!this.variables.get(key)) {
|
|
164
|
-
this.variables.set(key, variable);
|
|
165
|
-
this.onDidChangeVariablesEmitter.fire();
|
|
166
|
-
return core_1.Disposable.create(() => this.unregisterVariable(variable.name));
|
|
167
|
-
}
|
|
168
|
-
return core_1.Disposable.NULL;
|
|
169
|
-
}
|
|
170
|
-
registerResolver(variable, resolver) {
|
|
171
|
-
var _a;
|
|
172
|
-
this.registerVariable(variable);
|
|
173
|
-
const key = this.getKey(variable.name);
|
|
174
|
-
const resolvers = (_a = this.resolvers.get(key)) !== null && _a !== void 0 ? _a : [];
|
|
175
|
-
resolvers.push(resolver);
|
|
176
|
-
this.resolvers.set(key, resolvers);
|
|
177
|
-
return core_1.Disposable.create(() => this.unregisterResolver(variable, resolver));
|
|
178
|
-
}
|
|
179
|
-
unregisterResolver(variable, resolver) {
|
|
180
|
-
const key = this.getKey(variable.name);
|
|
181
|
-
const registeredResolvers = this.resolvers.get(key);
|
|
182
|
-
registeredResolvers === null || registeredResolvers === void 0 ? void 0 : registeredResolvers.splice(registeredResolvers.indexOf(resolver), 1);
|
|
183
|
-
if ((registeredResolvers === null || registeredResolvers === void 0 ? void 0 : registeredResolvers.length) === 0) {
|
|
184
|
-
this.unregisterVariable(variable.name);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
unregisterVariable(name) {
|
|
188
|
-
this.variables.delete(this.getKey(name));
|
|
189
|
-
this.resolvers.delete(this.getKey(name));
|
|
190
|
-
this.onDidChangeVariablesEmitter.fire();
|
|
191
|
-
}
|
|
192
|
-
registerArgumentPicker(variable, argPicker) {
|
|
193
|
-
this.registerVariable(variable);
|
|
194
|
-
const key = this.getKey(variable.name);
|
|
195
|
-
this.argPickers.set(key, argPicker);
|
|
196
|
-
return core_1.Disposable.create(() => this.unregisterArgumentPicker(variable, argPicker));
|
|
197
|
-
}
|
|
198
|
-
unregisterArgumentPicker(variable, argPicker) {
|
|
199
|
-
const key = this.getKey(variable.name);
|
|
200
|
-
const registeredArgPicker = this.argPickers.get(key);
|
|
201
|
-
if (registeredArgPicker === argPicker) {
|
|
202
|
-
this.argPickers.delete(key);
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
async getArgumentPicker(name) {
|
|
206
|
-
var _a;
|
|
207
|
-
return (_a = this.argPickers.get(this.getKey(name))) !== null && _a !== void 0 ? _a : undefined;
|
|
208
|
-
}
|
|
209
|
-
registerArgumentCompletionProvider(variable, completionProvider) {
|
|
210
|
-
this.registerVariable(variable);
|
|
211
|
-
const key = this.getKey(variable.name);
|
|
212
|
-
this.argCompletionProviders.set(key, completionProvider);
|
|
213
|
-
return core_1.Disposable.create(() => this.unregisterArgumentCompletionProvider(variable, completionProvider));
|
|
214
|
-
}
|
|
215
|
-
unregisterArgumentCompletionProvider(variable, completionProvider) {
|
|
216
|
-
const key = this.getKey(variable.name);
|
|
217
|
-
const registeredCompletionProvider = this.argCompletionProviders.get(key);
|
|
218
|
-
if (registeredCompletionProvider === completionProvider) {
|
|
219
|
-
this.argCompletionProviders.delete(key);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
async getArgumentCompletionProvider(name) {
|
|
223
|
-
var _a;
|
|
224
|
-
return (_a = this.argCompletionProviders.get(this.getKey(name))) !== null && _a !== void 0 ? _a : undefined;
|
|
225
|
-
}
|
|
226
|
-
parseRequest(request) {
|
|
227
|
-
const variableName = typeof request === 'string'
|
|
228
|
-
? request
|
|
229
|
-
: typeof request.variable === 'string'
|
|
230
|
-
? request.variable
|
|
231
|
-
: request.variable.name;
|
|
232
|
-
const arg = typeof request === 'string' ? undefined : request.arg;
|
|
233
|
-
return { variableName, arg };
|
|
234
|
-
}
|
|
235
|
-
async resolveVariable(request, context, cache = createAIResolveVariableCache()) {
|
|
236
|
-
// Calculate unique variable cache key from variable name and argument
|
|
237
|
-
const { variableName, arg } = this.parseRequest(request);
|
|
238
|
-
const cacheKey = `${variableName}${prompt_text_1.PromptText.VARIABLE_SEPARATOR_CHAR}${arg !== null && arg !== void 0 ? arg : ''}`;
|
|
239
|
-
// If the current cache key exists and is still in progress, we reached a cycle.
|
|
240
|
-
// If we reach it but it has been resolved, it was part of another resolution branch and we can simply return it.
|
|
241
|
-
if (cache.has(cacheKey)) {
|
|
242
|
-
const existingEntry = cache.get(cacheKey);
|
|
243
|
-
if (existingEntry.inProgress) {
|
|
244
|
-
this.logger.warn(`Cycle detected for variable: ${variableName} with arg: ${arg}. Skipping resolution.`);
|
|
245
|
-
return undefined;
|
|
246
|
-
}
|
|
247
|
-
return existingEntry.promise;
|
|
248
|
-
}
|
|
249
|
-
const entry = { promise: this.doResolve(variableName, arg, context, cache), inProgress: true };
|
|
250
|
-
entry.promise.finally(() => entry.inProgress = false);
|
|
251
|
-
cache.set(cacheKey, entry);
|
|
252
|
-
return entry.promise;
|
|
253
|
-
}
|
|
254
|
-
/**
|
|
255
|
-
* Asynchronously resolves a variable, handling its dependencies while preventing cyclical resolution.
|
|
256
|
-
* Selects the appropriate resolver and resolution strategy based on whether nested dependency resolution is supported.
|
|
257
|
-
*/
|
|
258
|
-
async doResolve(variableName, arg, context, cache) {
|
|
259
|
-
const variable = this.getVariable(variableName);
|
|
260
|
-
if (!variable) {
|
|
261
|
-
return undefined;
|
|
262
|
-
}
|
|
263
|
-
const resolver = await this.getResolver(variableName, arg, context);
|
|
264
|
-
let resolved;
|
|
265
|
-
if (isResolverWithDependencies(resolver)) {
|
|
266
|
-
// Explicit cast needed because Typescript does not consider the method parameter length of the type guard at compile time
|
|
267
|
-
resolved = await resolver.resolve({ variable, arg }, context, async (depRequest) => this.resolveVariable(depRequest, context, cache));
|
|
268
|
-
}
|
|
269
|
-
else if (resolver) {
|
|
270
|
-
// Explicit cast needed because Typescript does not consider the method parameter length of the type guard at compile time
|
|
271
|
-
resolved = await resolver.resolve({ variable, arg }, context);
|
|
272
|
-
}
|
|
273
|
-
else {
|
|
274
|
-
resolved = undefined;
|
|
275
|
-
}
|
|
276
|
-
return resolved ? { ...resolved, arg } : undefined;
|
|
277
|
-
}
|
|
278
|
-
};
|
|
279
|
-
exports.DefaultAIVariableService = DefaultAIVariableService;
|
|
280
|
-
exports.DefaultAIVariableService = DefaultAIVariableService = tslib_1.__decorate([
|
|
281
|
-
(0, inversify_1.injectable)(),
|
|
282
|
-
tslib_1.__param(0, (0, inversify_1.inject)(core_1.ContributionProvider)),
|
|
283
|
-
tslib_1.__param(0, (0, inversify_1.named)(exports.AIVariableContribution)),
|
|
284
|
-
tslib_1.__param(1, (0, inversify_1.inject)(core_1.ILogger)),
|
|
285
|
-
tslib_1.__metadata("design:paramtypes", [Object, Object])
|
|
286
|
-
], DefaultAIVariableService);
|
|
287
|
-
//# sourceMappingURL=variable-service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"variable-service.js","sourceRoot":"","sources":["../../src/common/variable-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"variable-service.spec.d.ts","sourceRoot":"","sources":["../../src/common/variable-service.spec.ts"],"names":[],"mappings":""}
|
|
@@ -1,237 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2024 EclipseSource GmbH.
|
|
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 sinon = require("sinon");
|
|
19
|
-
const core_1 = require("@theia/core");
|
|
20
|
-
const chai_1 = require("chai");
|
|
21
|
-
const variable_service_1 = require("./variable-service");
|
|
22
|
-
describe('DefaultAIVariableService', () => {
|
|
23
|
-
let variableService;
|
|
24
|
-
let contributionProvider;
|
|
25
|
-
let logger;
|
|
26
|
-
const varA = {
|
|
27
|
-
id: 'provider.a',
|
|
28
|
-
name: 'a',
|
|
29
|
-
description: 'Variable A'
|
|
30
|
-
};
|
|
31
|
-
const varB = {
|
|
32
|
-
id: 'provider.b',
|
|
33
|
-
name: 'b',
|
|
34
|
-
description: 'Variable B'
|
|
35
|
-
};
|
|
36
|
-
const varC = {
|
|
37
|
-
id: 'provider.c',
|
|
38
|
-
name: 'c',
|
|
39
|
-
description: 'Variable C'
|
|
40
|
-
};
|
|
41
|
-
const varD = {
|
|
42
|
-
id: 'provider.d',
|
|
43
|
-
name: 'd',
|
|
44
|
-
description: 'Variable D'
|
|
45
|
-
};
|
|
46
|
-
// Create resolvers for our variables
|
|
47
|
-
const resolverA = {
|
|
48
|
-
canResolve: sinon.stub().returns(1),
|
|
49
|
-
resolve: async (_request, _context, resolveDependency) => {
|
|
50
|
-
var _a, _b;
|
|
51
|
-
if (resolveDependency) {
|
|
52
|
-
// Variable A depends on both B and C
|
|
53
|
-
const dependencyB = await resolveDependency({ variable: varB });
|
|
54
|
-
const dependencyC = await resolveDependency({ variable: varC });
|
|
55
|
-
return {
|
|
56
|
-
variable: varA,
|
|
57
|
-
value: `A resolved with B: ${(_a = dependencyB === null || dependencyB === void 0 ? void 0 : dependencyB.value) !== null && _a !== void 0 ? _a : 'undefined'} and C: ${(_b = dependencyC === null || dependencyC === void 0 ? void 0 : dependencyC.value) !== null && _b !== void 0 ? _b : 'undefined'}`,
|
|
58
|
-
allResolvedDependencies: [
|
|
59
|
-
...(dependencyB ? [dependencyB] : []),
|
|
60
|
-
...(dependencyC ? [dependencyC] : [])
|
|
61
|
-
]
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
return { variable: varA, value: 'A value' };
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
const resolverB = {
|
|
68
|
-
canResolve: sinon.stub().returns(1),
|
|
69
|
-
resolve: async (_request, _context, resolveDependency) => {
|
|
70
|
-
var _a;
|
|
71
|
-
if (resolveDependency) {
|
|
72
|
-
// Variable B depends on A, creating a cycle
|
|
73
|
-
const dependencyA = await resolveDependency({ variable: varA });
|
|
74
|
-
return {
|
|
75
|
-
variable: varB,
|
|
76
|
-
value: `B resolved with A: ${(_a = dependencyA === null || dependencyA === void 0 ? void 0 : dependencyA.value) !== null && _a !== void 0 ? _a : 'undefined (cycle detected)'}`,
|
|
77
|
-
allResolvedDependencies: dependencyA ? [dependencyA] : []
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
return { variable: varB, value: 'B value' };
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
const resolverC = {
|
|
84
|
-
canResolve: sinon.stub().returns(1),
|
|
85
|
-
resolve: async (_request, _context, resolveDependency) => {
|
|
86
|
-
var _a, _b;
|
|
87
|
-
if (resolveDependency) {
|
|
88
|
-
// Variable C depends on D with two different arguments
|
|
89
|
-
const dependencyD1 = await resolveDependency({ variable: varD, arg: 'arg1' });
|
|
90
|
-
const dependencyD2 = await resolveDependency({ variable: varD, arg: 'arg2' });
|
|
91
|
-
return {
|
|
92
|
-
variable: varC,
|
|
93
|
-
value: `C resolved with D(arg1): ${(_a = dependencyD1 === null || dependencyD1 === void 0 ? void 0 : dependencyD1.value) !== null && _a !== void 0 ? _a : 'undefined'} and D(arg2): ${(_b = dependencyD2 === null || dependencyD2 === void 0 ? void 0 : dependencyD2.value) !== null && _b !== void 0 ? _b : 'undefined'}`,
|
|
94
|
-
allResolvedDependencies: [
|
|
95
|
-
...(dependencyD1 ? [dependencyD1] : []),
|
|
96
|
-
...(dependencyD2 ? [dependencyD2] : [])
|
|
97
|
-
]
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
return { variable: varC, value: 'C value' };
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
const resolverD = {
|
|
104
|
-
canResolve: sinon.stub().returns(1),
|
|
105
|
-
resolve: async (request) => {
|
|
106
|
-
const arg = request.arg;
|
|
107
|
-
return {
|
|
108
|
-
variable: varD,
|
|
109
|
-
value: arg ? `D value with ${arg}` : 'D value'
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
beforeEach(() => {
|
|
114
|
-
// Create stub for the contribution provider
|
|
115
|
-
contributionProvider = {
|
|
116
|
-
getContributions: sinon.stub().returns([])
|
|
117
|
-
};
|
|
118
|
-
// Create stub for logger
|
|
119
|
-
logger = sinon.createStubInstance(core_1.Logger);
|
|
120
|
-
// Create the service under test
|
|
121
|
-
variableService = new variable_service_1.DefaultAIVariableService(contributionProvider, logger);
|
|
122
|
-
// Register the variables and resolvers
|
|
123
|
-
variableService.registerResolver(varA, resolverA);
|
|
124
|
-
variableService.registerResolver(varB, resolverB);
|
|
125
|
-
variableService.registerResolver(varC, resolverC);
|
|
126
|
-
variableService.registerResolver(varD, resolverD);
|
|
127
|
-
});
|
|
128
|
-
describe('resolveVariable', () => {
|
|
129
|
-
it('should handle recursive variable resolution and detect cycles', async () => {
|
|
130
|
-
// Try to resolve variable A, which has a cycle with B and also depends on C which depends on D
|
|
131
|
-
const result = await variableService.resolveVariable('a', {});
|
|
132
|
-
// Verify the result
|
|
133
|
-
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
134
|
-
(0, chai_1.expect)(result.variable).to.deep.equal(varA);
|
|
135
|
-
// The value should contain B's value (with a cycle detection) and C's value
|
|
136
|
-
(0, chai_1.expect)(result.value).to.include('B resolved with A: undefined (cycle detected)');
|
|
137
|
-
(0, chai_1.expect)(result.value).to.include('C resolved with D(arg1): D value with arg1 and D(arg2): D value with arg2');
|
|
138
|
-
// Verify that we logged a warning about the cycle
|
|
139
|
-
(0, chai_1.expect)(logger.warn.calledOnce).to.be.true;
|
|
140
|
-
(0, chai_1.expect)(logger.warn.firstCall.args[0]).to.include('Cycle detected for variable: a');
|
|
141
|
-
// Verify dependencies are tracked
|
|
142
|
-
(0, chai_1.expect)(result.allResolvedDependencies).to.have.lengthOf(2);
|
|
143
|
-
// Find the B dependency and verify it doesn't have A in its dependencies (due to cycle detection)
|
|
144
|
-
const bDependency = result.allResolvedDependencies.find(d => d.variable.name === 'b');
|
|
145
|
-
(0, chai_1.expect)(bDependency).to.not.be.undefined;
|
|
146
|
-
(0, chai_1.expect)(bDependency.allResolvedDependencies).to.be.empty;
|
|
147
|
-
// Find the C dependency and its D dependencies
|
|
148
|
-
const cDependency = result.allResolvedDependencies.find(d => d.variable.name === 'c');
|
|
149
|
-
(0, chai_1.expect)(cDependency).to.not.be.undefined;
|
|
150
|
-
(0, chai_1.expect)(cDependency.value).to.equal('C resolved with D(arg1): D value with arg1 and D(arg2): D value with arg2');
|
|
151
|
-
(0, chai_1.expect)(cDependency.allResolvedDependencies).to.have.lengthOf(2);
|
|
152
|
-
const dDependency1 = cDependency.allResolvedDependencies[0];
|
|
153
|
-
(0, chai_1.expect)(dDependency1.variable.name).to.equal('d');
|
|
154
|
-
(0, chai_1.expect)(dDependency1.value).to.equal('D value with arg1');
|
|
155
|
-
const dDependency2 = cDependency.allResolvedDependencies[1];
|
|
156
|
-
(0, chai_1.expect)(dDependency2.variable.name).to.equal('d');
|
|
157
|
-
(0, chai_1.expect)(dDependency2.value).to.equal('D value with arg2');
|
|
158
|
-
});
|
|
159
|
-
it('should handle variables with a simple chain of dependencies', async () => {
|
|
160
|
-
// Variable C depends on D with two different arguments
|
|
161
|
-
const result = await variableService.resolveVariable('c', {});
|
|
162
|
-
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
163
|
-
(0, chai_1.expect)(result.variable).to.deep.equal(varC);
|
|
164
|
-
(0, chai_1.expect)(result.value).to.equal('C resolved with D(arg1): D value with arg1 and D(arg2): D value with arg2');
|
|
165
|
-
// Verify dependency chain
|
|
166
|
-
(0, chai_1.expect)(result.allResolvedDependencies).to.have.lengthOf(2);
|
|
167
|
-
const dDependency1 = result.allResolvedDependencies[0];
|
|
168
|
-
(0, chai_1.expect)(dDependency1.variable.name).to.equal('d');
|
|
169
|
-
(0, chai_1.expect)(dDependency1.value).to.equal('D value with arg1');
|
|
170
|
-
const dDependency2 = result.allResolvedDependencies[1];
|
|
171
|
-
(0, chai_1.expect)(dDependency2.variable.name).to.equal('d');
|
|
172
|
-
(0, chai_1.expect)(dDependency2.value).to.equal('D value with arg2');
|
|
173
|
-
});
|
|
174
|
-
it('should handle variables without dependencies', async () => {
|
|
175
|
-
// D has no dependencies
|
|
176
|
-
const result = await variableService.resolveVariable('d', {});
|
|
177
|
-
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
178
|
-
(0, chai_1.expect)(result.variable).to.deep.equal(varD);
|
|
179
|
-
(0, chai_1.expect)(result.value).to.equal('D value');
|
|
180
|
-
(0, chai_1.expect)(result.allResolvedDependencies).to.be.undefined;
|
|
181
|
-
});
|
|
182
|
-
it('should handle variables with arguments', async () => {
|
|
183
|
-
// Test D with an argument
|
|
184
|
-
const result = await variableService.resolveVariable({ variable: 'd', arg: 'test-arg' }, {}, undefined);
|
|
185
|
-
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
186
|
-
(0, chai_1.expect)(result.variable).to.deep.equal(varD);
|
|
187
|
-
(0, chai_1.expect)(result.value).to.equal('D value with test-arg');
|
|
188
|
-
(0, chai_1.expect)(result.allResolvedDependencies).to.be.undefined;
|
|
189
|
-
});
|
|
190
|
-
it('should return undefined for non-existent variables', async () => {
|
|
191
|
-
const result = await variableService.resolveVariable('nonexistent', {});
|
|
192
|
-
(0, chai_1.expect)(result).to.be.undefined;
|
|
193
|
-
});
|
|
194
|
-
it('should properly populate cache when resolving variables with dependencies', async () => {
|
|
195
|
-
// Create a cache to pass into the resolver
|
|
196
|
-
const cache = (0, variable_service_1.createAIResolveVariableCache)();
|
|
197
|
-
// Resolve variable A, which depends on B and C, and C depends on D with two arguments
|
|
198
|
-
const result = await variableService.resolveVariable('a', {}, cache);
|
|
199
|
-
// Verify that the result is correct
|
|
200
|
-
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
201
|
-
(0, chai_1.expect)(result.variable).to.deep.equal(varA);
|
|
202
|
-
// Verify that the cache has entries for all variables
|
|
203
|
-
(0, chai_1.expect)(cache.size).to.equal(5); // A, B, C, D(arg1), and D(arg2)
|
|
204
|
-
// Verify that all variables have entries in the cache
|
|
205
|
-
(0, chai_1.expect)(cache.has('a:')).to.be.true; // 'a:' key format is variableName + separator + arg (empty in this case)
|
|
206
|
-
(0, chai_1.expect)(cache.has('b:')).to.be.true;
|
|
207
|
-
(0, chai_1.expect)(cache.has('c:')).to.be.true;
|
|
208
|
-
(0, chai_1.expect)(cache.has('d:arg1')).to.be.true;
|
|
209
|
-
(0, chai_1.expect)(cache.has('d:arg2')).to.be.true;
|
|
210
|
-
// Verify that all promises in the cache are resolved
|
|
211
|
-
for (const entry of cache.values()) {
|
|
212
|
-
const resolvedVar = await entry.promise;
|
|
213
|
-
(0, chai_1.expect)(resolvedVar).to.not.be.undefined;
|
|
214
|
-
(0, chai_1.expect)(entry.inProgress).to.be.false;
|
|
215
|
-
}
|
|
216
|
-
// Check specific variable results from cache
|
|
217
|
-
const aEntry = cache.get('a:');
|
|
218
|
-
const aResult = await aEntry.promise;
|
|
219
|
-
(0, chai_1.expect)(aResult.variable.name).to.equal('a');
|
|
220
|
-
const bEntry = cache.get('b:');
|
|
221
|
-
const bResult = await bEntry.promise;
|
|
222
|
-
(0, chai_1.expect)(bResult.variable.name).to.equal('b');
|
|
223
|
-
const cEntry = cache.get('c:');
|
|
224
|
-
const cResult = await cEntry.promise;
|
|
225
|
-
(0, chai_1.expect)(cResult.variable.name).to.equal('c');
|
|
226
|
-
const dEntry1 = cache.get('d:arg1');
|
|
227
|
-
const dResult1 = await dEntry1.promise;
|
|
228
|
-
(0, chai_1.expect)(dResult1.variable.name).to.equal('d');
|
|
229
|
-
(0, chai_1.expect)(dResult1.value).to.equal('D value with arg1');
|
|
230
|
-
const dEntry2 = cache.get('d:arg2');
|
|
231
|
-
const dResult2 = await dEntry2.promise;
|
|
232
|
-
(0, chai_1.expect)(dResult2.variable.name).to.equal('d');
|
|
233
|
-
(0, chai_1.expect)(dResult2.value).to.equal('D value with arg2');
|
|
234
|
-
});
|
|
235
|
-
});
|
|
236
|
-
});
|
|
237
|
-
//# sourceMappingURL=variable-service.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"variable-service.spec.js","sourceRoot":"","sources":["../../src/common/variable-service.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ai-core-backend-module.d.ts","sourceRoot":"","sources":["../../src/node/ai-core-backend-module.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAgG/D,wBAIG"}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
// *****************************************************************************
|
|
4
|
-
// Copyright (C) 2024 EclipseSource GmbH.
|
|
5
|
-
//
|
|
6
|
-
// This program and the accompanying materials are made available under the
|
|
7
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
8
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
9
|
-
//
|
|
10
|
-
// This Source Code may also be made available under the following Secondary
|
|
11
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
12
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
13
|
-
// with the GNU Classpath Exception which is available at
|
|
14
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
15
|
-
//
|
|
16
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
17
|
-
// *****************************************************************************
|
|
18
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
19
|
-
const language_model_frontend_delegate_1 = require("./language-model-frontend-delegate");
|
|
20
|
-
const core_1 = require("@theia/core");
|
|
21
|
-
const connection_container_module_1 = require("@theia/core/lib/node/messaging/connection-container-module");
|
|
22
|
-
const common_1 = require("../common");
|
|
23
|
-
const backend_language_model_registry_1 = require("./backend-language-model-registry");
|
|
24
|
-
const token_usage_service_impl_1 = require("./token-usage-service-impl");
|
|
25
|
-
const agent_preferences_1 = require("../common/agent-preferences");
|
|
26
|
-
const ai_core_preferences_1 = require("../common/ai-core-preferences");
|
|
27
|
-
// We use a connection module to handle AI services separately for each frontend.
|
|
28
|
-
const aiCoreConnectionModule = connection_container_module_1.ConnectionContainerModule.create(({ bind, bindBackendService, bindFrontendService }) => {
|
|
29
|
-
(0, core_1.bindContributionProvider)(bind, common_1.LanguageModelProvider);
|
|
30
|
-
bind(backend_language_model_registry_1.BackendLanguageModelRegistryImpl).toSelf().inSingletonScope();
|
|
31
|
-
bind(common_1.LanguageModelRegistry).toService(backend_language_model_registry_1.BackendLanguageModelRegistryImpl);
|
|
32
|
-
bind(common_1.TokenUsageService).to(token_usage_service_impl_1.TokenUsageServiceImpl).inSingletonScope();
|
|
33
|
-
bind(core_1.ConnectionHandler)
|
|
34
|
-
.toDynamicValue(({ container }) => new core_1.RpcConnectionHandler(common_1.TOKEN_USAGE_SERVICE_PATH, client => {
|
|
35
|
-
const service = container.get(common_1.TokenUsageService);
|
|
36
|
-
service.setClient(client);
|
|
37
|
-
return service;
|
|
38
|
-
}))
|
|
39
|
-
.inSingletonScope();
|
|
40
|
-
bind(common_1.LanguageModelRegistryFrontendDelegate).to(language_model_frontend_delegate_1.LanguageModelRegistryFrontendDelegateImpl).inSingletonScope();
|
|
41
|
-
bind(core_1.ConnectionHandler)
|
|
42
|
-
.toDynamicValue(ctx => new core_1.RpcConnectionHandler(common_1.languageModelRegistryDelegatePath, client => {
|
|
43
|
-
const registryDelegate = ctx.container.get(common_1.LanguageModelRegistryFrontendDelegate);
|
|
44
|
-
registryDelegate.setClient(client);
|
|
45
|
-
return registryDelegate;
|
|
46
|
-
}))
|
|
47
|
-
.inSingletonScope();
|
|
48
|
-
bind(language_model_frontend_delegate_1.LanguageModelFrontendDelegateImpl).toSelf().inSingletonScope();
|
|
49
|
-
bind(common_1.LanguageModelFrontendDelegate).toService(language_model_frontend_delegate_1.LanguageModelFrontendDelegateImpl);
|
|
50
|
-
bind(core_1.ConnectionHandler)
|
|
51
|
-
.toDynamicValue(({ container }) => new core_1.RpcConnectionHandler(common_1.languageModelDelegatePath, client => {
|
|
52
|
-
const service = container.get(language_model_frontend_delegate_1.LanguageModelFrontendDelegateImpl);
|
|
53
|
-
service.setClient(client);
|
|
54
|
-
return service;
|
|
55
|
-
}))
|
|
56
|
-
.inSingletonScope();
|
|
57
|
-
bind(common_1.PromptServiceImpl).toSelf().inSingletonScope();
|
|
58
|
-
bind(common_1.PromptService).toService(common_1.PromptServiceImpl);
|
|
59
|
-
});
|
|
60
|
-
exports.default = new inversify_1.ContainerModule(bind => {
|
|
61
|
-
bind(core_1.PreferenceContribution).toConstantValue({ schema: agent_preferences_1.AgentSettingsPreferenceSchema });
|
|
62
|
-
(0, ai_core_preferences_1.bindAICorePreferences)(bind);
|
|
63
|
-
bind(connection_container_module_1.ConnectionContainerModule).toConstantValue(aiCoreConnectionModule);
|
|
64
|
-
});
|
|
65
|
-
//# sourceMappingURL=ai-core-backend-module.js.map
|