@theia/ai-core 1.74.0-next.9 → 1.74.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/ai-configuration-service-impl.d.ts +32 -0
- package/lib/browser/ai-configuration-service-impl.d.ts.map +1 -0
- package/lib/browser/ai-configuration-service-impl.js +120 -0
- package/lib/browser/ai-configuration-service-impl.js.map +1 -0
- package/lib/browser/ai-configuration-service-impl.spec.d.ts +2 -0
- package/lib/browser/ai-configuration-service-impl.spec.d.ts.map +1 -0
- package/lib/browser/ai-configuration-service-impl.spec.js +214 -0
- package/lib/browser/ai-configuration-service-impl.spec.js.map +1 -0
- package/lib/browser/ai-core-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-core-frontend-module.js +4 -0
- package/lib/browser/ai-core-frontend-module.js.map +1 -1
- package/lib/browser/ai-settings-service.d.ts +2 -5
- package/lib/browser/ai-settings-service.d.ts.map +1 -1
- package/lib/browser/ai-settings-service.js +8 -15
- package/lib/browser/ai-settings-service.js.map +1 -1
- package/lib/browser/frontend-language-model-alias-registry.d.ts +2 -4
- package/lib/browser/frontend-language-model-alias-registry.d.ts.map +1 -1
- package/lib/browser/frontend-language-model-alias-registry.js +21 -26
- package/lib/browser/frontend-language-model-alias-registry.js.map +1 -1
- package/lib/browser/frontend-language-model-service.d.ts +2 -3
- package/lib/browser/frontend-language-model-service.d.ts.map +1 -1
- package/lib/browser/frontend-language-model-service.js +6 -6
- package/lib/browser/frontend-language-model-service.js.map +1 -1
- package/lib/browser/index.d.ts +1 -0
- package/lib/browser/index.d.ts.map +1 -1
- package/lib/browser/index.js +1 -0
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/prompt-variable-contribution.d.ts.map +1 -1
- package/lib/browser/prompt-variable-contribution.js +13 -16
- package/lib/browser/prompt-variable-contribution.js.map +1 -1
- package/lib/browser/prompt-variable-contribution.spec.js +64 -2
- package/lib/browser/prompt-variable-contribution.spec.js.map +1 -1
- package/lib/browser/trust-aware-preference-reader.d.ts +13 -1
- package/lib/browser/trust-aware-preference-reader.d.ts.map +1 -1
- package/lib/browser/trust-aware-preference-reader.js +21 -2
- package/lib/browser/trust-aware-preference-reader.js.map +1 -1
- package/lib/browser/trust-aware-preference-reader.spec.js +26 -0
- package/lib/browser/trust-aware-preference-reader.spec.js.map +1 -1
- package/lib/common/ai-configuration-service.d.ts +104 -0
- package/lib/common/ai-configuration-service.d.ts.map +1 -0
- package/lib/common/ai-configuration-service.js +20 -0
- package/lib/common/ai-configuration-service.js.map +1 -0
- package/lib/common/ai-core-preferences.d.ts +4 -0
- package/lib/common/ai-core-preferences.d.ts.map +1 -1
- package/lib/common/ai-core-preferences.js +20 -1
- package/lib/common/ai-core-preferences.js.map +1 -1
- package/lib/common/index.d.ts +1 -0
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js +1 -0
- package/lib/common/index.js.map +1 -1
- package/lib/common/language-model.d.ts +56 -2
- package/lib/common/language-model.d.ts.map +1 -1
- package/lib/common/language-model.js +53 -3
- package/lib/common/language-model.js.map +1 -1
- package/lib/common/language-model.spec.js +75 -0
- package/lib/common/language-model.spec.js.map +1 -1
- package/lib/common/prompt-service.d.ts +13 -0
- package/lib/common/prompt-service.d.ts.map +1 -1
- package/lib/common/prompt-service.js +8 -0
- package/lib/common/prompt-service.js.map +1 -1
- package/lib/common/prompt-service.spec.js +46 -0
- package/lib/common/prompt-service.spec.js.map +1 -1
- package/lib/node/backend-language-model-registry.d.ts.map +1 -1
- package/lib/node/backend-language-model-registry.js +1 -0
- package/lib/node/backend-language-model-registry.js.map +1 -1
- package/package.json +12 -12
- package/src/browser/ai-configuration-service-impl.spec.ts +254 -0
- package/src/browser/ai-configuration-service-impl.ts +120 -0
- package/src/browser/ai-core-frontend-module.ts +7 -1
- package/src/browser/ai-settings-service.ts +8 -16
- package/src/browser/frontend-language-model-alias-registry.ts +22 -26
- package/src/browser/frontend-language-model-service.ts +5 -6
- package/src/browser/index.ts +1 -0
- package/src/browser/prompt-variable-contribution.spec.ts +88 -2
- package/src/browser/prompt-variable-contribution.ts +13 -16
- package/src/browser/trust-aware-preference-reader.spec.ts +29 -0
- package/src/browser/trust-aware-preference-reader.ts +23 -3
- package/src/common/ai-configuration-service.ts +128 -0
- package/src/common/ai-core-preferences.ts +23 -1
- package/src/common/index.ts +1 -0
- package/src/common/language-model.spec.ts +98 -1
- package/src/common/language-model.ts +107 -4
- package/src/common/prompt-service.spec.ts +56 -0
- package/src/common/prompt-service.ts +22 -0
- package/src/node/backend-language-model-registry.ts +1 -0
|
@@ -22,15 +22,15 @@ const core_1 = require("@theia/core");
|
|
|
22
22
|
const common_1 = require("@theia/core/lib/common");
|
|
23
23
|
const ai_core_preferences_1 = require("../common/ai-core-preferences");
|
|
24
24
|
const promise_util_1 = require("@theia/core/lib/common/promise-util");
|
|
25
|
-
const
|
|
25
|
+
const ai_configuration_service_1 = require("../common/ai-configuration-service");
|
|
26
26
|
let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry {
|
|
27
27
|
constructor() {
|
|
28
28
|
this.aliases = [
|
|
29
29
|
{
|
|
30
30
|
id: 'default/code',
|
|
31
31
|
defaultModelIds: [
|
|
32
|
-
'anthropic/claude-opus-
|
|
33
|
-
'openai/gpt-5.
|
|
32
|
+
'anthropic/claude-opus-5',
|
|
33
|
+
'openai/gpt-5.6-sol',
|
|
34
34
|
'google/gemini-3.1-pro-preview'
|
|
35
35
|
],
|
|
36
36
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/code/description', 'Optimized for code understanding and generation tasks.')
|
|
@@ -38,8 +38,8 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
38
38
|
{
|
|
39
39
|
id: 'default/universal',
|
|
40
40
|
defaultModelIds: [
|
|
41
|
-
'anthropic/claude-opus-
|
|
42
|
-
'openai/gpt-5.
|
|
41
|
+
'anthropic/claude-opus-5',
|
|
42
|
+
'openai/gpt-5.6-sol',
|
|
43
43
|
'google/gemini-3.1-pro-preview'
|
|
44
44
|
],
|
|
45
45
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/universal/description', 'Well-balanced for both code and general language use.')
|
|
@@ -47,8 +47,8 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
47
47
|
{
|
|
48
48
|
id: 'default/code-completion',
|
|
49
49
|
defaultModelIds: [
|
|
50
|
-
'anthropic/claude-sonnet-
|
|
51
|
-
'openai/gpt-5.
|
|
50
|
+
'anthropic/claude-sonnet-5',
|
|
51
|
+
'openai/gpt-5.6-sol',
|
|
52
52
|
'google/gemini-3.1-pro-preview'
|
|
53
53
|
],
|
|
54
54
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/code-completion/description', 'Best suited for code autocompletion scenarios.')
|
|
@@ -56,8 +56,8 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
56
56
|
{
|
|
57
57
|
id: 'default/summarize',
|
|
58
58
|
defaultModelIds: [
|
|
59
|
-
'anthropic/claude-opus-
|
|
60
|
-
'openai/gpt-5.
|
|
59
|
+
'anthropic/claude-opus-5',
|
|
60
|
+
'openai/gpt-5.6-sol',
|
|
61
61
|
'google/gemini-3.1-pro-preview'
|
|
62
62
|
],
|
|
63
63
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/summarize/description', 'Models prioritized for summarization and condensation of content.')
|
|
@@ -66,8 +66,8 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
66
66
|
id: 'default/fast',
|
|
67
67
|
defaultModelIds: [
|
|
68
68
|
'anthropic/claude-haiku-4-5',
|
|
69
|
-
'openai/gpt-5.
|
|
70
|
-
'google/gemini-3.
|
|
69
|
+
'openai/gpt-5.6-luna',
|
|
70
|
+
'google/gemini-3.6-flash'
|
|
71
71
|
],
|
|
72
72
|
description: core_1.nls.localize('theia/ai/core/defaultModelAliases/fast/description', 'Faster and cheaper models for simpler tasks like exploration or basic tool calling, where deep reasoning is not required.')
|
|
73
73
|
}
|
|
@@ -80,17 +80,16 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
80
80
|
return this._ready.promise;
|
|
81
81
|
}
|
|
82
82
|
init() {
|
|
83
|
-
|
|
83
|
+
this.aiConfigurationService.ready.then(() => {
|
|
84
84
|
this.loadFromPreference();
|
|
85
|
-
this.
|
|
86
|
-
if (
|
|
85
|
+
this.aiConfigurationService.onDidChange(change => {
|
|
86
|
+
if (change.affectsPreference(ai_core_preferences_1.LANGUAGE_MODEL_ALIASES_PREFERENCE)) {
|
|
87
87
|
this.loadFromPreference();
|
|
88
|
+
if (!change.preferenceName) {
|
|
89
|
+
this.onDidChangeEmitter.fire();
|
|
90
|
+
}
|
|
88
91
|
}
|
|
89
92
|
});
|
|
90
|
-
this.trustAwareReader.onDidChangeTrust(() => {
|
|
91
|
-
this.loadFromPreference();
|
|
92
|
-
this.onDidChangeEmitter.fire();
|
|
93
|
-
});
|
|
94
93
|
this._ready.resolve();
|
|
95
94
|
}, err => {
|
|
96
95
|
this._ready.reject(err);
|
|
@@ -144,7 +143,7 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
144
143
|
* Load aliases from the persisted setting
|
|
145
144
|
*/
|
|
146
145
|
loadFromPreference() {
|
|
147
|
-
const stored = this.
|
|
146
|
+
const stored = this.aiConfigurationService.get(ai_core_preferences_1.LANGUAGE_MODEL_ALIASES_PREFERENCE) || {};
|
|
148
147
|
this.aliases.forEach(alias => {
|
|
149
148
|
if (stored[alias.id] && stored[alias.id].selectedModel) {
|
|
150
149
|
alias.selectedModelId = stored[alias.id].selectedModel;
|
|
@@ -164,18 +163,14 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
164
163
|
map[alias.id] = { selectedModel: alias.selectedModelId };
|
|
165
164
|
}
|
|
166
165
|
}
|
|
167
|
-
this.
|
|
166
|
+
this.aiConfigurationService.set(ai_core_preferences_1.LANGUAGE_MODEL_ALIASES_PREFERENCE, map, common_1.PreferenceScope.User);
|
|
168
167
|
}
|
|
169
168
|
};
|
|
170
169
|
exports.DefaultLanguageModelAliasRegistry = DefaultLanguageModelAliasRegistry;
|
|
171
170
|
tslib_1.__decorate([
|
|
172
|
-
(0, inversify_1.inject)(
|
|
171
|
+
(0, inversify_1.inject)(ai_configuration_service_1.AiConfigurationService),
|
|
173
172
|
tslib_1.__metadata("design:type", Object)
|
|
174
|
-
], DefaultLanguageModelAliasRegistry.prototype, "
|
|
175
|
-
tslib_1.__decorate([
|
|
176
|
-
(0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
|
|
177
|
-
tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
|
|
178
|
-
], DefaultLanguageModelAliasRegistry.prototype, "trustAwareReader", void 0);
|
|
173
|
+
], DefaultLanguageModelAliasRegistry.prototype, "aiConfigurationService", void 0);
|
|
179
174
|
tslib_1.__decorate([
|
|
180
175
|
(0, inversify_1.postConstruct)(),
|
|
181
176
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-language-model-alias-registry.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,8CAA8C;AAC9C,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,4DAAiF;AACjF,sCAAkD;AAElD,
|
|
1
|
+
{"version":3,"file":"frontend-language-model-alias-registry.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-trust-service';
|
|
2
|
-
import { LanguageModel, LanguageModelResponse, UserRequest } from '../common';
|
|
2
|
+
import { AiConfigurationService, LanguageModel, LanguageModelResponse, UserRequest } from '../common';
|
|
3
3
|
import { LanguageModelServiceImpl } from '../common/language-model-service';
|
|
4
4
|
import { RequestSetting, ReasoningPreferenceEntry } from '../common/ai-core-preferences';
|
|
5
|
-
import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
|
|
6
5
|
export declare class FrontendLanguageModelServiceImpl extends LanguageModelServiceImpl {
|
|
7
6
|
protected readonly workspaceTrustService: WorkspaceTrustService;
|
|
8
|
-
protected readonly
|
|
7
|
+
protected readonly aiConfiguration: AiConfigurationService;
|
|
9
8
|
sendRequest(languageModel: LanguageModel, languageModelRequest: UserRequest): Promise<LanguageModelResponse>;
|
|
10
9
|
}
|
|
11
10
|
export declare const mergeRequestSettings: (requestSettings: RequestSetting[], modelId: string, providerId: string, agentId?: string) => RequestSetting;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-language-model-service.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-service.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAqB,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"frontend-language-model-service.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-service.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAC7F,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,qBAAqB,EAAqB,WAAW,EAAE,MAAM,WAAW,CAAC;AACzH,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAGH,cAAc,EACd,wBAAwB,EAE3B,MAAM,+BAA+B,CAAC;AAEvC,qBACa,gCAAiC,SAAQ,wBAAwB;IAG1E,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IAE5C,WAAW,CACtB,aAAa,EAAE,aAAa,EAC5B,oBAAoB,EAAE,WAAW,GAClC,OAAO,CAAC,qBAAqB,CAAC;CAuCpC;AAED,eAAO,MAAM,oBAAoB,GAAI,iBAAiB,cAAc,EAAE,EAAE,SAAS,MAAM,EAAE,YAAY,MAAM,EAAE,UAAU,MAAM,KAAG,cAU/H,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAC/B,kBAAkB,wBAAwB,EAAE,EAC5C,SAAS,MAAM,EACf,YAAY,MAAM,EAClB,UAAU,MAAM,KACjB,wBAAwB,GAAG,SAuB7B,CAAC"}
|
|
@@ -21,13 +21,13 @@ const nls_1 = require("@theia/core/lib/common/nls");
|
|
|
21
21
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
22
22
|
const prioritizeable_1 = require("@theia/core/lib/common/prioritizeable");
|
|
23
23
|
const workspace_trust_service_1 = require("@theia/workspace/lib/browser/workspace-trust-service");
|
|
24
|
+
const common_1 = require("../common");
|
|
24
25
|
const language_model_service_1 = require("../common/language-model-service");
|
|
25
26
|
const ai_core_preferences_1 = require("../common/ai-core-preferences");
|
|
26
|
-
const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
|
|
27
27
|
let FrontendLanguageModelServiceImpl = class FrontendLanguageModelServiceImpl extends language_model_service_1.LanguageModelServiceImpl {
|
|
28
28
|
async sendRequest(languageModel, languageModelRequest) {
|
|
29
|
-
const requestSettings = this.
|
|
30
|
-
const reasoningEntries = this.
|
|
29
|
+
const requestSettings = this.aiConfiguration.get(ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS, []) ?? [];
|
|
30
|
+
const reasoningEntries = this.aiConfiguration.get(ai_core_preferences_1.PREFERENCE_NAME_REASONING, []) ?? [];
|
|
31
31
|
const trusted = await this.workspaceTrustService.getWorkspaceTrust();
|
|
32
32
|
if (!trusted) {
|
|
33
33
|
throw new Error(nls_1.nls.localize('theia/ai-core/aiDisabledInRestrictedMode', 'AI features are not available in untrusted workspaces.'));
|
|
@@ -69,9 +69,9 @@ tslib_1.__decorate([
|
|
|
69
69
|
tslib_1.__metadata("design:type", workspace_trust_service_1.WorkspaceTrustService)
|
|
70
70
|
], FrontendLanguageModelServiceImpl.prototype, "workspaceTrustService", void 0);
|
|
71
71
|
tslib_1.__decorate([
|
|
72
|
-
(0, inversify_1.inject)(
|
|
73
|
-
tslib_1.__metadata("design:type",
|
|
74
|
-
], FrontendLanguageModelServiceImpl.prototype, "
|
|
72
|
+
(0, inversify_1.inject)(common_1.AiConfigurationService),
|
|
73
|
+
tslib_1.__metadata("design:type", Object)
|
|
74
|
+
], FrontendLanguageModelServiceImpl.prototype, "aiConfiguration", void 0);
|
|
75
75
|
exports.FrontendLanguageModelServiceImpl = FrontendLanguageModelServiceImpl = tslib_1.__decorate([
|
|
76
76
|
(0, inversify_1.injectable)()
|
|
77
77
|
], FrontendLanguageModelServiceImpl);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-language-model-service.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,oDAAiD;AACjD,4DAAkE;AAClE,0EAAuE;AACvE,kGAA6F;
|
|
1
|
+
{"version":3,"file":"frontend-language-model-service.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-service.ts"],"names":[],"mappings":"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"}
|
package/lib/browser/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * from './ai-core-frontend-application-contribution';
|
|
|
7
7
|
export * from './ai-core-frontend-module';
|
|
8
8
|
export * from '../common/ai-core-preferences';
|
|
9
9
|
export * from './ai-settings-service';
|
|
10
|
+
export * from './ai-configuration-service-impl';
|
|
10
11
|
export * from './ai-view-contribution';
|
|
11
12
|
export * from './frontend-language-model-registry';
|
|
12
13
|
export * from './frontend-language-model-alias-registry';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAgBA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAgBA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC"}
|
package/lib/browser/index.js
CHANGED
|
@@ -25,6 +25,7 @@ tslib_1.__exportStar(require("./ai-core-frontend-application-contribution"), exp
|
|
|
25
25
|
tslib_1.__exportStar(require("./ai-core-frontend-module"), exports);
|
|
26
26
|
tslib_1.__exportStar(require("../common/ai-core-preferences"), exports);
|
|
27
27
|
tslib_1.__exportStar(require("./ai-settings-service"), exports);
|
|
28
|
+
tslib_1.__exportStar(require("./ai-configuration-service-impl"), exports);
|
|
28
29
|
tslib_1.__exportStar(require("./ai-view-contribution"), exports);
|
|
29
30
|
tslib_1.__exportStar(require("./frontend-language-model-registry"), exports);
|
|
30
31
|
tslib_1.__exportStar(require("./frontend-language-model-alias-registry"), exports);
|
package/lib/browser/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,uEAA6C;AAC7C,oEAA0C;AAC1C,iEAAuC;AACvC,kEAAwC;AACxC,uEAA6C;AAC7C,sFAA4D;AAC5D,oEAA0C;AAC1C,wEAA8C;AAC9C,gEAAsC;AACtC,iEAAuC;AACvC,6EAAmD;AACnD,mFAAyD;AACzD,sEAA4C;AAC5C,wEAA8C;AAC9C,wEAA8C;AAC9C,+EAAqD;AACrD,yEAA+C;AAC/C,0DAAgC;AAChC,qEAA2C;AAC3C,sEAA4C;AAC5C,yEAA+C;AAC/C,2EAAiD;AACjD,uFAA6D;AAC7D,8FAAoE;AACpE,yEAA+C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,uEAA6C;AAC7C,oEAA0C;AAC1C,iEAAuC;AACvC,kEAAwC;AACxC,uEAA6C;AAC7C,sFAA4D;AAC5D,oEAA0C;AAC1C,wEAA8C;AAC9C,gEAAsC;AACtC,0EAAgD;AAChD,iEAAuC;AACvC,6EAAmD;AACnD,mFAAyD;AACzD,sEAA4C;AAC5C,wEAA8C;AAC9C,wEAA8C;AAC9C,+EAAqD;AACrD,yEAA+C;AAC/C,0DAAgC;AAChC,qEAA2C;AAC3C,sEAA4C;AAC5C,yEAA+C;AAC/C,2EAAiD;AACjD,uFAA6D;AAC7D,8FAAoE;AACpE,yEAA+C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAO,MAAM,aAAa,CAAC;AAE3D,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,EACH,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,0CAA0C,EAC1C,aAAa,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA8B,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGrF,eAAO,MAAM,eAAe,EAAE,UAO7B,CAAC;AAEF,qBACa,0BAA2B,YAAW,sBAAsB,EAAE,0CAA0C;IAGjH,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAMnD,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM;IAO9E,OAAO,CACT,OAAO,EAAE,2BAA2B,EACpC,OAAO,EAAE,iBAAiB,EAC1B,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,GACzF,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"prompt-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAO,MAAM,aAAa,CAAC;AAE3D,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAC;AACpD,OAAO,EACH,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,0CAA0C,EAC1C,aAAa,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA8B,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGrF,eAAO,MAAM,eAAe,EAAE,UAO7B,CAAC;AAEF,qBACa,0BAA2B,YAAW,sBAAsB,EAAE,0CAA0C;IAGjH,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAMnD,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,MAAM;IAO9E,OAAO,CACT,OAAO,EAAE,2BAA2B,EACpC,OAAO,EAAE,iBAAiB,EAC1B,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,GACzF,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IA8D1C,OAAO,CAAC,0BAA0B;IAoBlC,OAAO,CAAC,qBAAqB;cA0Cb,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;cAQpD,8BAA8B,CAC1C,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,EAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAC1B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC;IAuCzD;;OAEG;IACG,sBAAsB,CACxB,WAAW,EAAE,MAAM,EAAE,EACrB,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,iBAAiB,EAC1B,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,GACzF,OAAO,CAAC,kBAAkB,CAAC;CA8BjC"}
|
|
@@ -50,11 +50,13 @@ let PromptVariableContribution = class PromptVariableContribution {
|
|
|
50
50
|
const pipeIndex = arg.indexOf('|');
|
|
51
51
|
const promptIdOrCommandName = pipeIndex >= 0 ? arg.substring(0, pipeIndex) : arg;
|
|
52
52
|
const commandArgs = pipeIndex >= 0 ? arg.substring(pipeIndex + 1) : '';
|
|
53
|
-
// Determine the actual fragment ID
|
|
54
|
-
//
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
// Determine the actual fragment ID by looking up the command name first.
|
|
54
|
+
// This must not be conditional on arguments being present: a customized (file-based)
|
|
55
|
+
// command has a fragment id that differs from its command name, so `/deploy` without
|
|
56
|
+
// arguments would otherwise not resolve even though `/deploy prod` does. It also keeps
|
|
57
|
+
// this lookup aligned with `PromptService.isKnownCommand`, which the chat request
|
|
58
|
+
// parser uses to decide whether `/deploy` is a command at all.
|
|
59
|
+
let fragment = this.promptService.getPromptFragmentByCommandName(promptIdOrCommandName);
|
|
58
60
|
// Fall back to looking up by fragment ID if not found by command name
|
|
59
61
|
if (!fragment) {
|
|
60
62
|
fragment = this.promptService.getRawPromptFragment(promptIdOrCommandName);
|
|
@@ -62,11 +64,7 @@ let PromptVariableContribution = class PromptVariableContribution {
|
|
|
62
64
|
// If we still don't have a fragment, we can't resolve
|
|
63
65
|
if (!fragment) {
|
|
64
66
|
this.logger.debug(`Could not find prompt fragment or command '${promptIdOrCommandName}'`);
|
|
65
|
-
return
|
|
66
|
-
variable: request.variable,
|
|
67
|
-
value: '',
|
|
68
|
-
allResolvedDependencies: []
|
|
69
|
-
};
|
|
67
|
+
return undefined;
|
|
70
68
|
}
|
|
71
69
|
const fragmentId = fragment.id;
|
|
72
70
|
// Resolve the prompt fragment normally (this handles {{variables}} and ~{functions})
|
|
@@ -87,12 +85,11 @@ let PromptVariableContribution = class PromptVariableContribution {
|
|
|
87
85
|
}
|
|
88
86
|
}
|
|
89
87
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
};
|
|
88
|
+
// Returning `undefined` rather than an empty resolution keeps the original text in place:
|
|
89
|
+
// callers fall back to the literal `#prompt:...` / `{{prompt:...}}` placeholder instead of
|
|
90
|
+
// silently dropping it, which is also how every other unresolvable variable behaves.
|
|
91
|
+
this.logger.debug(`Could not resolve prompt variable '${request.variable.name}' with arg '${request.arg}'.`);
|
|
92
|
+
return undefined;
|
|
96
93
|
}
|
|
97
94
|
substituteCommandArguments(template, commandName, commandArgs) {
|
|
98
95
|
// Parse arguments (respecting quotes)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.ts"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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;AAChF,sCAA2D;AAC3D,4DAAkE;AAClE,oDAAoD;AAWpD,6DAAqF;AACrF,uDAAmD;AAEtC,QAAA,eAAe,GAAe;IACvC,EAAE,EAAE,iBAAiB;IACrB,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,0CAA0C,EAAE,kDAAkD,CAAC;IACzH,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE;QACF,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,6CAA6C,EAAE,mCAAmC,CAAC,EAAE;KAChI;CACJ,CAAC;AAGK,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAWnC,iBAAiB,CAAC,OAA0B;QACxC,OAAO,CAAC,gBAAgB,CAAC,uBAAe,EAAE,IAAI,CAAC,CAAC;QAChD,OAAO,CAAC,sBAAsB,CAAC,uBAAe,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,kCAAkC,CAAC,uBAAe,EAAE,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChH,CAAC;IAED,UAAU,CAAC,OAAoC,EAAE,OAA0B;QACvE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,uBAAe,CAAC,IAAI,EAAE,CAAC;YACjD,OAAO,CAAC,CAAC;QACb,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CACT,OAAoC,EACpC,OAA0B,EAC1B,iBAAwF;QAExF,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,uBAAe,CAAC,IAAI,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YAChC,IAAI,GAAG,EAAE,CAAC;gBACN,oEAAoE;gBACpE,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACnC,MAAM,qBAAqB,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACjF,MAAM,WAAW,GAAG,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAEvE,
|
|
1
|
+
{"version":3,"file":"prompt-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.ts"],"names":[],"mappings":"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"}
|
|
@@ -155,9 +155,71 @@ describe('PromptVariableContribution', () => {
|
|
|
155
155
|
(0, chai_1.expect)(result?.value).to.equal('Do something with input');
|
|
156
156
|
(0, chai_1.expect)(result?.variable).to.deep.equal(prompt_variable_contribution_1.PROMPT_VARIABLE);
|
|
157
157
|
});
|
|
158
|
-
|
|
158
|
+
describe('customized (file-based) commands, whose fragment id differs from the command name', () => {
|
|
159
|
+
const customized = {
|
|
160
|
+
id: 'my-file',
|
|
161
|
+
customizationId: 'customization-1',
|
|
162
|
+
priority: 1,
|
|
163
|
+
template: 'Deploy $ARGUMENTS now.',
|
|
164
|
+
isCommand: true,
|
|
165
|
+
commandName: 'deploy'
|
|
166
|
+
};
|
|
167
|
+
beforeEach(() => {
|
|
168
|
+
promptService['customizationService'] = {
|
|
169
|
+
isPromptFragmentCustomized: (id) => id === customized.id,
|
|
170
|
+
getActivePromptFragmentCustomization: (id) => (id === customized.id ? customized : undefined),
|
|
171
|
+
getCustomizedPromptFragmentIds: () => [customized.id]
|
|
172
|
+
};
|
|
173
|
+
});
|
|
174
|
+
it('resolves the command with arguments', async () => {
|
|
175
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'deploy|prod' }, {});
|
|
176
|
+
(0, chai_1.expect)(result?.value).to.equal('Deploy prod now.');
|
|
177
|
+
});
|
|
178
|
+
it('resolves the command without arguments', async () => {
|
|
179
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'deploy' }, {});
|
|
180
|
+
(0, chai_1.expect)(result?.value).to.equal('Deploy $ARGUMENTS now.');
|
|
181
|
+
});
|
|
182
|
+
it('is accepted by isKnownCommand for both invocations', () => {
|
|
183
|
+
(0, chai_1.expect)(promptService.isKnownCommand('deploy')).to.be.true;
|
|
184
|
+
});
|
|
185
|
+
it('still resolves the command by its fragment id', async () => {
|
|
186
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'my-file' }, {});
|
|
187
|
+
(0, chai_1.expect)(result?.value).to.equal('Deploy $ARGUMENTS now.');
|
|
188
|
+
});
|
|
189
|
+
});
|
|
190
|
+
// Resolving to `undefined` instead of an empty string makes callers keep the original text
|
|
191
|
+
// (the literal `#prompt:...` / `{{prompt:...}}` placeholder) rather than silently dropping it.
|
|
192
|
+
it('returns undefined for a non-existent prompt with arguments', async () => {
|
|
159
193
|
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'non-existent|args' }, {});
|
|
160
|
-
(0, chai_1.expect)(result
|
|
194
|
+
(0, chai_1.expect)(result).to.be.undefined;
|
|
195
|
+
});
|
|
196
|
+
it('returns undefined for a non-existent prompt without arguments', async () => {
|
|
197
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'non-existent' }, {});
|
|
198
|
+
(0, chai_1.expect)(result).to.be.undefined;
|
|
199
|
+
});
|
|
200
|
+
it('returns undefined for a path-like argument', async () => {
|
|
201
|
+
promptService.addBuiltInPromptFragment({
|
|
202
|
+
id: 'hello-cmd',
|
|
203
|
+
template: 'Hello, world!',
|
|
204
|
+
isCommand: true,
|
|
205
|
+
commandName: 'hello'
|
|
206
|
+
});
|
|
207
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'home|/user/notes.txt and fix the bug' }, {});
|
|
208
|
+
(0, chai_1.expect)(result).to.be.undefined;
|
|
209
|
+
});
|
|
210
|
+
it('returns undefined when no argument is given', async () => {
|
|
211
|
+
(0, chai_1.expect)(await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: undefined }, {})).to.be.undefined;
|
|
212
|
+
(0, chai_1.expect)(await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: ' ' }, {})).to.be.undefined;
|
|
213
|
+
});
|
|
214
|
+
it('resolves a command referenced by its fragment id without arguments', async () => {
|
|
215
|
+
promptService.addBuiltInPromptFragment({
|
|
216
|
+
id: 'hello-cmd',
|
|
217
|
+
template: 'Hello, world!',
|
|
218
|
+
isCommand: true,
|
|
219
|
+
commandName: 'hello'
|
|
220
|
+
});
|
|
221
|
+
const result = await contribution.resolve({ variable: prompt_variable_contribution_1.PROMPT_VARIABLE, arg: 'hello' }, {});
|
|
222
|
+
(0, chai_1.expect)(result?.value).to.equal('Hello, world!');
|
|
161
223
|
});
|
|
162
224
|
});
|
|
163
225
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-variable-contribution.spec.js","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prompt-variable-contribution.spec.js","sourceRoot":"","sources":["../../src/browser/prompt-variable-contribution.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { JSONValue } from '@theia/core/shared/@lumino/coreutils';
|
|
1
2
|
import { Emitter, Event } from '@theia/core';
|
|
2
3
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
3
|
-
import { PreferenceService } from '@theia/core/lib/common/preferences';
|
|
4
|
+
import { PreferenceInspection, PreferenceService } from '@theia/core/lib/common/preferences';
|
|
4
5
|
import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-trust-service';
|
|
5
6
|
/**
|
|
6
7
|
* Helper for reading AI preferences that must ignore workspace/folder scopes
|
|
@@ -8,6 +9,9 @@ import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-tr
|
|
|
8
9
|
*
|
|
9
10
|
* Writes should continue to go through `PreferenceService` directly; trust only
|
|
10
11
|
* affects reads.
|
|
12
|
+
*
|
|
13
|
+
* @internal This is an implementation detail of {@link AiConfigurationService}. AI configuration
|
|
14
|
+
* consumers should go through `AiConfigurationService` rather than injecting this reader directly.
|
|
11
15
|
*/
|
|
12
16
|
export declare class TrustAwarePreferenceReader {
|
|
13
17
|
protected readonly preferences: PreferenceService;
|
|
@@ -34,5 +38,13 @@ export declare class TrustAwarePreferenceReader {
|
|
|
34
38
|
* is untrusted. Returns `globalValue ?? defaultValue ?? fallback`.
|
|
35
39
|
*/
|
|
36
40
|
get<T>(preferenceName: string, fallback?: T, resourceUri?: string): T | undefined;
|
|
41
|
+
/**
|
|
42
|
+
* Narrows a raw {@link PreferenceInspection} according to workspace trust: when the workspace is
|
|
43
|
+
* untrusted the folder and workspace scope values are dropped so that only the user and default
|
|
44
|
+
* scopes contribute (failing closed until the trust state resolves). A trusted inspection is
|
|
45
|
+
* returned unchanged. This is the single definition of the trust-suppression rule, shared by
|
|
46
|
+
* {@link get} and by inspection-based consumers, so value reads and inspections cannot drift.
|
|
47
|
+
*/
|
|
48
|
+
suppressUntrusted<T extends JSONValue>(inspection: PreferenceInspection<T>): PreferenceInspection<T>;
|
|
37
49
|
}
|
|
38
50
|
//# sourceMappingURL=trust-aware-preference-reader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trust-aware-preference-reader.d.ts","sourceRoot":"","sources":["../../src/browser/trust-aware-preference-reader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trust-aware-preference-reader.d.ts","sourceRoot":"","sources":["../../src/browser/trust-aware-preference-reader.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAE7F;;;;;;;;;GASG;AACH,qBACa,0BAA0B;IAGnC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC;IAEhD;;;;;OAKG;IACH,SAAS,CAAC,OAAO,UAAS;IAE1B,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwB;IAEjD;;;;OAIG;IACH,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAED,SAAS,CAAC,QAAQ,CAAC,uBAAuB,mBAA0B;IACpE,QAAQ,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAsC;IAG/E,SAAS,CAAC,IAAI,IAAI,IAAI;IAiCtB;;;OAGG;IACH,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAYjF;;;;;;OAMG;IACH,iBAAiB,CAAC,CAAC,SAAS,SAAS,EAAE,UAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,oBAAoB,CAAC,CAAC,CAAC;CAMvG"}
|
|
@@ -28,6 +28,9 @@ const workspace_trust_service_1 = require("@theia/workspace/lib/browser/workspac
|
|
|
28
28
|
*
|
|
29
29
|
* Writes should continue to go through `PreferenceService` directly; trust only
|
|
30
30
|
* affects reads.
|
|
31
|
+
*
|
|
32
|
+
* @internal This is an implementation detail of {@link AiConfigurationService}. AI configuration
|
|
33
|
+
* consumers should go through `AiConfigurationService` rather than injecting this reader directly.
|
|
31
34
|
*/
|
|
32
35
|
let TrustAwarePreferenceReader = class TrustAwarePreferenceReader {
|
|
33
36
|
constructor() {
|
|
@@ -89,8 +92,24 @@ let TrustAwarePreferenceReader = class TrustAwarePreferenceReader {
|
|
|
89
92
|
return this.preferences.get(preferenceName, fallback, resourceUri);
|
|
90
93
|
}
|
|
91
94
|
const inspection = this.preferences.inspect(preferenceName, resourceUri);
|
|
92
|
-
|
|
93
|
-
|
|
95
|
+
if (!inspection) {
|
|
96
|
+
return fallback;
|
|
97
|
+
}
|
|
98
|
+
const suppressed = this.suppressUntrusted(inspection);
|
|
99
|
+
return (suppressed.globalValue ?? suppressed.defaultValue) ?? fallback;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Narrows a raw {@link PreferenceInspection} according to workspace trust: when the workspace is
|
|
103
|
+
* untrusted the folder and workspace scope values are dropped so that only the user and default
|
|
104
|
+
* scopes contribute (failing closed until the trust state resolves). A trusted inspection is
|
|
105
|
+
* returned unchanged. This is the single definition of the trust-suppression rule, shared by
|
|
106
|
+
* {@link get} and by inspection-based consumers, so value reads and inspections cannot drift.
|
|
107
|
+
*/
|
|
108
|
+
suppressUntrusted(inspection) {
|
|
109
|
+
if (this.trusted) {
|
|
110
|
+
return inspection;
|
|
111
|
+
}
|
|
112
|
+
return { ...inspection, workspaceValue: undefined, workspaceFolderValue: undefined };
|
|
94
113
|
}
|
|
95
114
|
};
|
|
96
115
|
exports.TrustAwarePreferenceReader = TrustAwarePreferenceReader;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trust-aware-preference-reader.js","sourceRoot":"","sources":["../../src/browser/trust-aware-preference-reader.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,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,4DAAiF;AAEjF,sCAA6C;AAC7C,sEAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"trust-aware-preference-reader.js","sourceRoot":"","sources":["../../src/browser/trust-aware-preference-reader.ts"],"names":[],"mappings":"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"}
|
|
@@ -136,6 +136,32 @@ describe('TrustAwarePreferenceReader', () => {
|
|
|
136
136
|
(0, chai_1.expect)(value).to.equal('fallback');
|
|
137
137
|
});
|
|
138
138
|
});
|
|
139
|
+
describe('suppressUntrusted', () => {
|
|
140
|
+
const inspection = {
|
|
141
|
+
preferenceName: PREFERENCE_NAME,
|
|
142
|
+
defaultValue: 'default',
|
|
143
|
+
globalValue: 'user',
|
|
144
|
+
workspaceValue: 'workspace',
|
|
145
|
+
workspaceFolderValue: 'folder',
|
|
146
|
+
value: 'folder'
|
|
147
|
+
};
|
|
148
|
+
it('clears the workspace and folder values when untrusted', async () => {
|
|
149
|
+
trust.trustDeferred.resolve(false);
|
|
150
|
+
await reader.ready;
|
|
151
|
+
const result = reader.suppressUntrusted({ ...inspection });
|
|
152
|
+
(0, chai_1.expect)(result.workspaceValue).to.equal(undefined);
|
|
153
|
+
(0, chai_1.expect)(result.workspaceFolderValue).to.equal(undefined);
|
|
154
|
+
(0, chai_1.expect)(result.globalValue).to.equal('user');
|
|
155
|
+
(0, chai_1.expect)(result.defaultValue).to.equal('default');
|
|
156
|
+
});
|
|
157
|
+
it('returns the inspection unchanged when trusted', async () => {
|
|
158
|
+
trust.trustDeferred.resolve(true);
|
|
159
|
+
await reader.ready;
|
|
160
|
+
const result = reader.suppressUntrusted({ ...inspection });
|
|
161
|
+
(0, chai_1.expect)(result.workspaceValue).to.equal('workspace');
|
|
162
|
+
(0, chai_1.expect)(result.workspaceFolderValue).to.equal('folder');
|
|
163
|
+
});
|
|
164
|
+
});
|
|
139
165
|
describe('onDidChangeTrust', () => {
|
|
140
166
|
beforeEach(async () => {
|
|
141
167
|
trust.trustDeferred.resolve(false);
|