@theia/ai-core 1.71.0-next.57 → 1.71.0-next.64
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-activation-service.d.ts +9 -0
- package/lib/browser/ai-activation-service.d.ts.map +1 -1
- package/lib/browser/ai-activation-service.js +5 -0
- package/lib/browser/ai-activation-service.js.map +1 -1
- package/lib/browser/ai-core-frontend-module.d.ts.map +1 -1
- package/lib/browser/ai-core-frontend-module.js +5 -1
- package/lib/browser/ai-core-frontend-module.js.map +1 -1
- package/lib/browser/ai-settings-service.d.ts +2 -0
- package/lib/browser/ai-settings-service.d.ts.map +1 -1
- package/lib/browser/ai-settings-service.js +8 -1
- package/lib/browser/ai-settings-service.js.map +1 -1
- package/lib/browser/frontend-language-model-alias-registry.d.ts +2 -0
- package/lib/browser/frontend-language-model-alias-registry.d.ts.map +1 -1
- package/lib/browser/frontend-language-model-alias-registry.js +11 -2
- package/lib/browser/frontend-language-model-alias-registry.js.map +1 -1
- package/lib/browser/frontend-language-model-service.d.ts +4 -2
- package/lib/browser/frontend-language-model-service.d.ts.map +1 -1
- package/lib/browser/frontend-language-model-service.js +16 -6
- package/lib/browser/frontend-language-model-service.js.map +1 -1
- package/lib/browser/product-name-variable-contribution.d.ts +9 -0
- package/lib/browser/product-name-variable-contribution.d.ts.map +1 -0
- package/lib/browser/product-name-variable-contribution.js +49 -0
- package/lib/browser/product-name-variable-contribution.js.map +1 -0
- package/lib/browser/product-name-variable-contribution.spec.d.ts +2 -0
- package/lib/browser/product-name-variable-contribution.spec.d.ts.map +1 -0
- package/lib/browser/product-name-variable-contribution.spec.js +50 -0
- package/lib/browser/product-name-variable-contribution.spec.js.map +1 -0
- package/lib/browser/trust-aware-preference-reader.d.ts +38 -0
- package/lib/browser/trust-aware-preference-reader.d.ts.map +1 -0
- package/lib/browser/trust-aware-preference-reader.js +114 -0
- package/lib/browser/trust-aware-preference-reader.js.map +1 -0
- package/lib/browser/trust-aware-preference-reader.spec.d.ts +2 -0
- package/lib/browser/trust-aware-preference-reader.spec.d.ts.map +1 -0
- package/lib/browser/trust-aware-preference-reader.spec.js +251 -0
- package/lib/browser/trust-aware-preference-reader.spec.js.map +1 -0
- package/package.json +9 -9
- package/src/browser/ai-activation-service.ts +16 -0
- package/src/browser/ai-core-frontend-module.ts +6 -1
- package/src/browser/ai-settings-service.ts +10 -1
- package/src/browser/frontend-language-model-alias-registry.ts +10 -2
- package/src/browser/frontend-language-model-service.ts +15 -5
- package/src/browser/product-name-variable-contribution.spec.ts +68 -0
- package/src/browser/product-name-variable-contribution.ts +47 -0
- package/src/browser/trust-aware-preference-reader.spec.ts +304 -0
- package/src/browser/trust-aware-preference-reader.ts +108 -0
|
@@ -4,8 +4,14 @@ export declare const AIActivationService: unique symbol;
|
|
|
4
4
|
* AIActivationService is used to manage the activation state of AI features in Theia.
|
|
5
5
|
*/
|
|
6
6
|
export interface AIActivationService {
|
|
7
|
+
/** Whether AI features are enabled in preferences. */
|
|
7
8
|
isActive: boolean;
|
|
9
|
+
/** Listen whether AI features are enabled in preferences. */
|
|
8
10
|
onDidChangeActiveStatus: Event<boolean>;
|
|
11
|
+
/** Whether AI features should actually be able to run (isActive + other conditions, e.g. workspace trust). */
|
|
12
|
+
canRun: boolean;
|
|
13
|
+
/** Listen whether AI features should actually be able to run (isActive + other conditions, e.g. workspace trust). */
|
|
14
|
+
onDidChangeCanRun: Event<boolean>;
|
|
9
15
|
}
|
|
10
16
|
import { Emitter, Event } from '@theia/core';
|
|
11
17
|
import { ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
@@ -24,8 +30,11 @@ export declare const ENABLE_AI_CONTEXT_KEY = "ai-features.AiEnable.enableAI";
|
|
|
24
30
|
export declare class AIActivationServiceImpl implements AIActivationService, FrontendApplicationContribution {
|
|
25
31
|
protected readonly contextKeyService: ContextKeyService;
|
|
26
32
|
isActive: boolean;
|
|
33
|
+
canRun: boolean;
|
|
27
34
|
protected onDidChangeAIEnabled: Emitter<boolean>;
|
|
28
35
|
get onDidChangeActiveStatus(): Event<boolean>;
|
|
36
|
+
protected onDidChangeCanRunEmitter: Emitter<boolean>;
|
|
37
|
+
get onDidChangeCanRun(): Event<boolean>;
|
|
29
38
|
initialize(): void;
|
|
30
39
|
}
|
|
31
40
|
//# sourceMappingURL=ai-activation-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-activation-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-activation-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,eAAO,MAAM,mBAAmB,eAAgC,CAAC;AACjE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-activation-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-activation-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAE,MAAM,yBAAyB,CAAC;AAE1E,eAAO,MAAM,mBAAmB,eAAgC,CAAC;AACjE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,sDAAsD;IACtD,QAAQ,EAAE,OAAO,CAAC;IAElB,6DAA6D;IAC7D,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAExC,8GAA8G;IAC9G,MAAM,EAAE,OAAO,CAAC;IAEhB,qHAAqH;IACrH,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;CACrC;AACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAEhF;;GAEG;AACH,eAAO,MAAM,qBAAqB,kCAAkC,CAAC;AAErE;;;;;;;GAOG;AACH,qBACa,uBAAwB,YAAW,mBAAmB,EAAE,+BAA+B;IAGhG,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAExD,QAAQ,EAAE,OAAO,CAAQ;IAEzB,MAAM,EAAE,OAAO,CAAQ;IAEvB,SAAS,CAAC,oBAAoB,mBAA0B;IACxD,IAAI,uBAAuB,IAAI,KAAK,CAAC,OAAO,CAAC,CAE5C;IAED,SAAS,CAAC,wBAAwB,mBAA0B;IAC5D,IAAI,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,CAEtC;IAED,UAAU,IAAI,IAAI;CAGrB"}
|
|
@@ -36,11 +36,16 @@ exports.ENABLE_AI_CONTEXT_KEY = 'ai-features.AiEnable.enableAI';
|
|
|
36
36
|
let AIActivationServiceImpl = class AIActivationServiceImpl {
|
|
37
37
|
constructor() {
|
|
38
38
|
this.isActive = true;
|
|
39
|
+
this.canRun = true;
|
|
39
40
|
this.onDidChangeAIEnabled = new core_1.Emitter();
|
|
41
|
+
this.onDidChangeCanRunEmitter = new core_1.Emitter();
|
|
40
42
|
}
|
|
41
43
|
get onDidChangeActiveStatus() {
|
|
42
44
|
return this.onDidChangeAIEnabled.event;
|
|
43
45
|
}
|
|
46
|
+
get onDidChangeCanRun() {
|
|
47
|
+
return this.onDidChangeCanRunEmitter.event;
|
|
48
|
+
}
|
|
44
49
|
initialize() {
|
|
45
50
|
this.contextKeyService.createKey(exports.ENABLE_AI_CONTEXT_KEY, true);
|
|
46
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-activation-service.js","sourceRoot":"","sources":["../../src/browser/ai-activation-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;AAChF,4DAAkE;AAGrD,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-activation-service.js","sourceRoot":"","sources":["../../src/browser/ai-activation-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;AAChF,4DAAkE;AAGrD,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAiBjE,sCAA6C;AAC7C,qFAAgF;AAEhF;;GAEG;AACU,QAAA,qBAAqB,GAAG,+BAA+B,CAAC;AAErE;;;;;;;GAOG;AAEI,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAA7B;QAKH,aAAQ,GAAY,IAAI,CAAC;QAEzB,WAAM,GAAY,IAAI,CAAC;QAEb,yBAAoB,GAAG,IAAI,cAAO,EAAW,CAAC;QAK9C,6BAAwB,GAAG,IAAI,cAAO,EAAW,CAAC;IAQhE,CAAC;IAZG,IAAI,uBAAuB;QACvB,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;IAC3C,CAAC;IAGD,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;IAC/C,CAAC;IAED,UAAU;QACN,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,6BAAqB,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;CACJ,CAAA;AAtBY,0DAAuB;AAGb;IADlB,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;kEAC8B;kCAH/C,uBAAuB;IADnC,IAAA,sBAAU,GAAE;GACA,uBAAuB,CAsBnC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-core-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;
|
|
1
|
+
{"version":3,"file":"ai-core-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAqE/D,wBA6HG"}
|
|
@@ -19,6 +19,7 @@ const core_1 = require("@theia/core");
|
|
|
19
19
|
const service_connection_provider_1 = require("@theia/core/lib/browser/messaging/service-connection-provider");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
21
|
const frontend_language_model_alias_registry_1 = require("./frontend-language-model-alias-registry");
|
|
22
|
+
const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
|
|
22
23
|
const language_model_alias_1 = require("../common/language-model-alias");
|
|
23
24
|
const common_1 = require("../common");
|
|
24
25
|
const frontend_language_model_registry_1 = require("./frontend-language-model-registry");
|
|
@@ -45,6 +46,7 @@ const skill_service_1 = require("./skill-service");
|
|
|
45
46
|
const skill_prompt_coordinator_1 = require("./skill-prompt-coordinator");
|
|
46
47
|
const ai_core_command_contribution_1 = require("./ai-core-command-contribution");
|
|
47
48
|
const prompt_variable_contribution_1 = require("./prompt-variable-contribution");
|
|
49
|
+
const product_name_variable_contribution_1 = require("./product-name-variable-contribution");
|
|
48
50
|
const capability_variable_contribution_1 = require("../common/capability-variable-contribution");
|
|
49
51
|
const generic_capabilities_variable_contribution_1 = require("./generic-capabilities-variable-contribution");
|
|
50
52
|
const generic_capabilities_prompt_fragment_contribution_1 = require("./generic-capabilities-prompt-fragment-contribution");
|
|
@@ -109,6 +111,7 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
109
111
|
bind(skills_variable_contribution_1.SkillsVariableContribution).toSelf().inSingletonScope();
|
|
110
112
|
bind(common_1.AIVariableContribution).toService(skills_variable_contribution_1.SkillsVariableContribution);
|
|
111
113
|
bind(common_1.AIVariableContribution).to(capability_variable_contribution_1.CapabilityVariableContribution).inSingletonScope();
|
|
114
|
+
bind(common_1.AIVariableContribution).to(product_name_variable_contribution_1.ProductNameVariableContribution).inSingletonScope();
|
|
112
115
|
bind(generic_capabilities_variable_contribution_1.GenericCapabilitiesVariableContribution).toSelf().inSingletonScope();
|
|
113
116
|
bind(common_1.AIVariableContribution).toService(generic_capabilities_variable_contribution_1.GenericCapabilitiesVariableContribution);
|
|
114
117
|
bind(generic_capabilities_prompt_fragment_contribution_1.GenericCapabilitiesPromptFragmentContribution).toSelf().inSingletonScope();
|
|
@@ -125,7 +128,7 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
125
128
|
const activationService = context.container.get(ai_activation_service_1.AIActivationService);
|
|
126
129
|
return {
|
|
127
130
|
execute: (...args) => handler.execute(...args),
|
|
128
|
-
isEnabled: (...args) => activationService.
|
|
131
|
+
isEnabled: (...args) => activationService.canRun && (handler.isEnabled?.(...args) ?? true),
|
|
129
132
|
isVisible: (...args) => activationService.isActive && (handler.isVisible?.(...args) ?? true),
|
|
130
133
|
isToggled: handler.isToggled
|
|
131
134
|
};
|
|
@@ -138,6 +141,7 @@ exports.default = new inversify_1.ContainerModule(bind => {
|
|
|
138
141
|
bind(common_1.TokenUsageServiceClient).to(token_usage_frontend_service_impl_1.TokenUsageServiceClientImpl).inSingletonScope();
|
|
139
142
|
bind(frontend_language_model_alias_registry_1.DefaultLanguageModelAliasRegistry).toSelf().inSingletonScope();
|
|
140
143
|
bind(language_model_alias_1.LanguageModelAliasRegistry).toService(frontend_language_model_alias_registry_1.DefaultLanguageModelAliasRegistry);
|
|
144
|
+
bind(trust_aware_preference_reader_1.TrustAwarePreferenceReader).toSelf().inSingletonScope();
|
|
141
145
|
bind(common_1.TokenUsageService).toDynamicValue(ctx => {
|
|
142
146
|
const connection = ctx.container.get(service_connection_provider_1.RemoteConnectionProvider);
|
|
143
147
|
const client = ctx.container.get(common_1.TokenUsageServiceClient);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-core-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ai-core-frontend-module.js","sourceRoot":"","sources":["../../src/browser/ai-core-frontend-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { DisposableCollection, Emitter, Event, ILogger, RecursiveReadonly } from '@theia/core';
|
|
2
2
|
import { PreferenceService } from '@theia/core/lib/common';
|
|
3
3
|
import { AISettings, AISettingsService, AgentSettings } from '../common';
|
|
4
|
+
import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
|
|
4
5
|
export declare class AISettingsServiceImpl implements AISettingsService {
|
|
5
6
|
protected readonly logger: ILogger;
|
|
6
7
|
protected preferenceService: PreferenceService;
|
|
8
|
+
protected readonly trustAwareReader: TrustAwarePreferenceReader;
|
|
7
9
|
static readonly PREFERENCE_NAME = "ai-features.agentSettings";
|
|
8
10
|
protected toDispose: DisposableCollection;
|
|
9
11
|
protected readonly onDidChangeEmitter: Emitter<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-settings-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ai-settings-service.d.ts","sourceRoot":"","sources":["../../src/browser/ai-settings-service.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBACa,qBAAsB,YAAW,iBAAiB;IAG3D,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAER,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG1E,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEhE,MAAM,CAAC,QAAQ,CAAC,eAAe,+BAA+B;IAE9D,SAAS,CAAC,SAAS,uBAA8B;IAEjD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGzD,SAAS,CAAC,IAAI,IAAI,IAAI;IAahB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxF,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAKtF,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;CAK9D"}
|
|
@@ -21,6 +21,7 @@ const tslib_1 = require("tslib");
|
|
|
21
21
|
const core_1 = require("@theia/core");
|
|
22
22
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
23
23
|
const common_1 = require("@theia/core/lib/common");
|
|
24
|
+
const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
|
|
24
25
|
let AISettingsServiceImpl = class AISettingsServiceImpl {
|
|
25
26
|
constructor() {
|
|
26
27
|
this.toDispose = new core_1.DisposableCollection();
|
|
@@ -35,6 +36,7 @@ let AISettingsServiceImpl = class AISettingsServiceImpl {
|
|
|
35
36
|
this.onDidChangeEmitter.fire();
|
|
36
37
|
}
|
|
37
38
|
}));
|
|
39
|
+
this.toDispose.push(this.trustAwareReader.onDidChangeTrust(() => this.onDidChangeEmitter.fire()));
|
|
38
40
|
}
|
|
39
41
|
async updateAgentSettings(agent, agentSettings) {
|
|
40
42
|
const settings = await this.getSettings();
|
|
@@ -53,7 +55,8 @@ let AISettingsServiceImpl = class AISettingsServiceImpl {
|
|
|
53
55
|
}
|
|
54
56
|
async getSettings() {
|
|
55
57
|
await this.preferenceService.ready;
|
|
56
|
-
|
|
58
|
+
await this.trustAwareReader.ready;
|
|
59
|
+
return this.trustAwareReader.get(AISettingsServiceImpl_1.PREFERENCE_NAME, {}) ?? {};
|
|
57
60
|
}
|
|
58
61
|
};
|
|
59
62
|
exports.AISettingsServiceImpl = AISettingsServiceImpl;
|
|
@@ -65,6 +68,10 @@ tslib_1.__decorate([
|
|
|
65
68
|
(0, inversify_1.inject)(common_1.PreferenceService),
|
|
66
69
|
tslib_1.__metadata("design:type", Object)
|
|
67
70
|
], AISettingsServiceImpl.prototype, "preferenceService", void 0);
|
|
71
|
+
tslib_1.__decorate([
|
|
72
|
+
(0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
|
|
73
|
+
tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
|
|
74
|
+
], AISettingsServiceImpl.prototype, "trustAwareReader", void 0);
|
|
68
75
|
tslib_1.__decorate([
|
|
69
76
|
(0, inversify_1.postConstruct)(),
|
|
70
77
|
tslib_1.__metadata("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-settings-service.js","sourceRoot":"","sources":["../../src/browser/ai-settings-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;AAChF,sCAA+F;AAC/F,4DAAiF;AACjF,mDAA2D;
|
|
1
|
+
{"version":3,"file":"ai-settings-service.js","sourceRoot":"","sources":["../../src/browser/ai-settings-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;AAChF,sCAA+F;AAC/F,4DAAiF;AACjF,mDAA2D;AAE3D,mFAA6E;AAGtE,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QAYO,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAE9B,uBAAkB,GAAG,IAAI,cAAO,EAAQ,CAAC;QAC5D,gBAAW,GAAgB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;IAqC7D,CAAC;;aA1CmB,oBAAe,GAAG,2BAA2B,AAA9B,CAA+B;IAQpD,IAAI;QACV,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;YAC/C,IAAI,KAAK,CAAC,cAAc,KAAK,uBAAqB,CAAC,eAAe,EAAE,CAAC;gBACjE,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACnC,CAAC;QACL,CAAC,CAAC,CACL,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,CACf,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAC/E,CAAC;IACN,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,KAAa,EAAE,aAAqC;QAC1E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,aAAa,EAAE,EAAE,CAAC;QACjF,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,uBAAqB,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAC3F,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,GAAG,CAAC,CAAC,CAAC;QACxE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAChC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;QACnC,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;QAClC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAa,uBAAqB,CAAC,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAClG,CAAC;;AAnDQ,sDAAqB;AAGX;IADlB,IAAA,kBAAM,EAAC,cAAO,CAAC;;qDACmB;AAEE;IAApC,IAAA,kBAAM,EAAC,0BAAiB,CAAC;;gEAAgD;AAGvD;IADlB,IAAA,kBAAM,EAAC,0DAA0B,CAAC;sCACE,0DAA0B;+DAAC;AAUtD;IADT,IAAA,yBAAa,GAAE;;;;iDAYf;gCA7BQ,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAoDjC"}
|
|
@@ -2,11 +2,13 @@ import { Emitter, Event } from '@theia/core';
|
|
|
2
2
|
import { LanguageModelAlias, LanguageModelAliasRegistry } from '../common/language-model-alias';
|
|
3
3
|
import { PreferenceService } from '@theia/core/lib/common';
|
|
4
4
|
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
5
|
+
import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
|
|
5
6
|
export declare class DefaultLanguageModelAliasRegistry implements LanguageModelAliasRegistry {
|
|
6
7
|
protected aliases: LanguageModelAlias[];
|
|
7
8
|
protected readonly onDidChangeEmitter: Emitter<void>;
|
|
8
9
|
readonly onDidChange: Event<void>;
|
|
9
10
|
protected readonly preferenceService: PreferenceService;
|
|
11
|
+
protected readonly trustAwareReader: TrustAwarePreferenceReader;
|
|
10
12
|
protected readonly _ready: Deferred<void>;
|
|
11
13
|
get ready(): Promise<void>;
|
|
12
14
|
protected init(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-language-model-alias-registry.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAChG,OAAO,EAAmB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"frontend-language-model-alias-registry.d.ts","sourceRoot":"","sources":["../../src/browser/frontend-language-model-alias-registry.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAO,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAChG,OAAO,EAAmB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBACa,iCAAkC,YAAW,0BAA0B;IAEhF,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,CAqCrC;IACF,SAAS,CAAC,QAAQ,CAAC,kBAAkB,gBAAuB;IAC5D,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAiC;IAGlE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEhE,SAAS,CAAC,QAAQ,CAAC,MAAM,iBAAwB;IACjD,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAEzB;IAGD,SAAS,CAAC,IAAI,IAAI,IAAI;IAkBtB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAWzC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAS7B,UAAU,IAAI,kBAAkB,EAAE;IAIlC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAW9C;;;OAGG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAS3D;;OAEG;IACH,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAWpC;;OAEG;IACH,SAAS,CAAC,gBAAgB,IAAI,IAAI;CASrC"}
|
|
@@ -22,6 +22,7 @@ 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 trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
|
|
25
26
|
let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry {
|
|
26
27
|
constructor() {
|
|
27
28
|
this.aliases = [
|
|
@@ -70,13 +71,17 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
70
71
|
return this._ready.promise;
|
|
71
72
|
}
|
|
72
73
|
init() {
|
|
73
|
-
this.preferenceService.ready.then(() => {
|
|
74
|
+
Promise.all([this.preferenceService.ready, this.trustAwareReader.ready]).then(() => {
|
|
74
75
|
this.loadFromPreference();
|
|
75
76
|
this.preferenceService.onPreferenceChanged(ev => {
|
|
76
77
|
if (ev.preferenceName === ai_core_preferences_1.LANGUAGE_MODEL_ALIASES_PREFERENCE) {
|
|
77
78
|
this.loadFromPreference();
|
|
78
79
|
}
|
|
79
80
|
});
|
|
81
|
+
this.trustAwareReader.onDidChangeTrust(() => {
|
|
82
|
+
this.loadFromPreference();
|
|
83
|
+
this.onDidChangeEmitter.fire();
|
|
84
|
+
});
|
|
80
85
|
this._ready.resolve();
|
|
81
86
|
}, err => {
|
|
82
87
|
this._ready.reject(err);
|
|
@@ -130,7 +135,7 @@ let DefaultLanguageModelAliasRegistry = class DefaultLanguageModelAliasRegistry
|
|
|
130
135
|
* Load aliases from the persisted setting
|
|
131
136
|
*/
|
|
132
137
|
loadFromPreference() {
|
|
133
|
-
const stored = this.
|
|
138
|
+
const stored = this.trustAwareReader.get(ai_core_preferences_1.LANGUAGE_MODEL_ALIASES_PREFERENCE) || {};
|
|
134
139
|
this.aliases.forEach(alias => {
|
|
135
140
|
if (stored[alias.id] && stored[alias.id].selectedModel) {
|
|
136
141
|
alias.selectedModelId = stored[alias.id].selectedModel;
|
|
@@ -158,6 +163,10 @@ tslib_1.__decorate([
|
|
|
158
163
|
(0, inversify_1.inject)(common_1.PreferenceService),
|
|
159
164
|
tslib_1.__metadata("design:type", Object)
|
|
160
165
|
], DefaultLanguageModelAliasRegistry.prototype, "preferenceService", void 0);
|
|
166
|
+
tslib_1.__decorate([
|
|
167
|
+
(0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
|
|
168
|
+
tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
|
|
169
|
+
], DefaultLanguageModelAliasRegistry.prototype, "trustAwareReader", void 0);
|
|
161
170
|
tslib_1.__decorate([
|
|
162
171
|
(0, inversify_1.postConstruct)(),
|
|
163
172
|
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,mDAA4E;AAC5E,uEAAkF;AAClF,sEAA+D;
|
|
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,9 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-trust-service';
|
|
2
2
|
import { LanguageModel, LanguageModelResponse, UserRequest } from '../common';
|
|
3
3
|
import { LanguageModelServiceImpl } from '../common/language-model-service';
|
|
4
4
|
import { RequestSetting, ThinkingModeSetting } from '../common/ai-core-preferences';
|
|
5
|
+
import { TrustAwarePreferenceReader } from './trust-aware-preference-reader';
|
|
5
6
|
export declare class FrontendLanguageModelServiceImpl extends LanguageModelServiceImpl {
|
|
6
|
-
protected
|
|
7
|
+
protected readonly workspaceTrustService: WorkspaceTrustService;
|
|
8
|
+
protected readonly trustAwareReader: TrustAwarePreferenceReader;
|
|
7
9
|
sendRequest(languageModel: LanguageModel, languageModelRequest: UserRequest): Promise<LanguageModelResponse>;
|
|
8
10
|
}
|
|
9
11
|
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":"
|
|
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,EAAwB,WAAW,EAAE,MAAM,WAAW,CAAC;AACpG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAGH,cAAc,EACd,mBAAmB,EAEtB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,qBACa,gCAAiC,SAAQ,wBAAwB;IAG1E,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,0BAA0B,CAAC;IAEjD,WAAW,CACtB,aAAa,EAAE,aAAa,EAC5B,oBAAoB,EAAE,WAAW,GAClC,OAAO,CAAC,qBAAqB,CAAC;CAiCpC;AAED,eAAO,MAAM,oBAAoB,GAAI,iBAAiB,cAAc,EAAE,EAAE,SAAS,MAAM,EAAE,YAAY,MAAM,EAAE,UAAU,MAAM,KAAG,cAU/H,CAAC;AAEF,eAAO,MAAM,yBAAyB,GAClC,sBAAsB,mBAAmB,EAAE,EAC3C,SAAS,MAAM,EACf,YAAY,MAAM,EAClB,UAAU,MAAM,KACjB,mBAAmB,GAAG,SAuBxB,CAAC"}
|
|
@@ -17,15 +17,21 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.mergeThinkingModeSettings = exports.mergeRequestSettings = exports.FrontendLanguageModelServiceImpl = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
|
-
const
|
|
20
|
+
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
|
+
const workspace_trust_service_1 = require("@theia/workspace/lib/browser/workspace-trust-service");
|
|
23
24
|
const language_model_service_1 = require("../common/language-model-service");
|
|
24
25
|
const ai_core_preferences_1 = require("../common/ai-core-preferences");
|
|
26
|
+
const trust_aware_preference_reader_1 = require("./trust-aware-preference-reader");
|
|
25
27
|
let FrontendLanguageModelServiceImpl = class FrontendLanguageModelServiceImpl extends language_model_service_1.LanguageModelServiceImpl {
|
|
26
28
|
async sendRequest(languageModel, languageModelRequest) {
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
+
const trusted = await this.workspaceTrustService.getWorkspaceTrust();
|
|
30
|
+
if (!trusted) {
|
|
31
|
+
throw new Error(nls_1.nls.localize('theia/ai-core/aiDisabledInRestrictedMode', 'AI features are not available in untrusted workspaces.'));
|
|
32
|
+
}
|
|
33
|
+
const requestSettings = this.trustAwareReader.get(ai_core_preferences_1.PREFERENCE_NAME_REQUEST_SETTINGS, []) ?? [];
|
|
34
|
+
const thinkingModeSettings = this.trustAwareReader.get(ai_core_preferences_1.PREFERENCE_NAME_THINKING_MODE, []) ?? [];
|
|
29
35
|
const ids = languageModel.id.split('/');
|
|
30
36
|
const matchingSetting = (0, exports.mergeRequestSettings)(requestSettings, ids[1], ids[0], languageModelRequest.agentId);
|
|
31
37
|
if (matchingSetting?.requestSettings) {
|
|
@@ -51,9 +57,13 @@ let FrontendLanguageModelServiceImpl = class FrontendLanguageModelServiceImpl ex
|
|
|
51
57
|
};
|
|
52
58
|
exports.FrontendLanguageModelServiceImpl = FrontendLanguageModelServiceImpl;
|
|
53
59
|
tslib_1.__decorate([
|
|
54
|
-
(0, inversify_1.inject)(
|
|
55
|
-
tslib_1.__metadata("design:type",
|
|
56
|
-
], FrontendLanguageModelServiceImpl.prototype, "
|
|
60
|
+
(0, inversify_1.inject)(workspace_trust_service_1.WorkspaceTrustService),
|
|
61
|
+
tslib_1.__metadata("design:type", workspace_trust_service_1.WorkspaceTrustService)
|
|
62
|
+
], FrontendLanguageModelServiceImpl.prototype, "workspaceTrustService", void 0);
|
|
63
|
+
tslib_1.__decorate([
|
|
64
|
+
(0, inversify_1.inject)(trust_aware_preference_reader_1.TrustAwarePreferenceReader),
|
|
65
|
+
tslib_1.__metadata("design:type", trust_aware_preference_reader_1.TrustAwarePreferenceReader)
|
|
66
|
+
], FrontendLanguageModelServiceImpl.prototype, "trustAwareReader", void 0);
|
|
57
67
|
exports.FrontendLanguageModelServiceImpl = FrontendLanguageModelServiceImpl = tslib_1.__decorate([
|
|
58
68
|
(0, inversify_1.injectable)()
|
|
59
69
|
], 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,
|
|
1
|
+
{"version":3,"file":"frontend-language-model-service.js","sourceRoot":"","sources":["../../src/browser/frontend-language-model-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MaybePromise } from '@theia/core';
|
|
2
|
+
import { AIVariable, AIVariableContribution, AIVariableContext, AIVariableResolutionRequest, AIVariableResolver, AIVariableService, ResolvedAIVariable } from '../common';
|
|
3
|
+
export declare const PRODUCT_NAME_VARIABLE: AIVariable;
|
|
4
|
+
export declare class ProductNameVariableContribution implements AIVariableContribution, AIVariableResolver {
|
|
5
|
+
registerVariables(service: AIVariableService): void;
|
|
6
|
+
canResolve(request: AIVariableResolutionRequest, context: AIVariableContext): MaybePromise<number>;
|
|
7
|
+
resolve(request: AIVariableResolutionRequest, context: AIVariableContext): Promise<ResolvedAIVariable | undefined>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=product-name-variable-contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-name-variable-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/product-name-variable-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,YAAY,EAAO,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAE1K,eAAO,MAAM,qBAAqB,EAAE,UAInC,CAAC;AAEF,qBACa,+BAAgC,YAAW,sBAAsB,EAAE,kBAAkB;IAC9F,iBAAiB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAInD,UAAU,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;IAO5F,OAAO,CAAC,OAAO,EAAE,2BAA2B,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;CAM3H"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.ProductNameVariableContribution = exports.PRODUCT_NAME_VARIABLE = void 0;
|
|
19
|
+
const tslib_1 = require("tslib");
|
|
20
|
+
const core_1 = require("@theia/core");
|
|
21
|
+
const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
|
|
22
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
23
|
+
exports.PRODUCT_NAME_VARIABLE = {
|
|
24
|
+
id: 'product-name-provider',
|
|
25
|
+
name: 'productName',
|
|
26
|
+
description: core_1.nls.localize('theia/ai/core/productNameVariable/description', 'The name of the product/application the user is working with'),
|
|
27
|
+
};
|
|
28
|
+
let ProductNameVariableContribution = class ProductNameVariableContribution {
|
|
29
|
+
registerVariables(service) {
|
|
30
|
+
service.registerResolver(exports.PRODUCT_NAME_VARIABLE, this);
|
|
31
|
+
}
|
|
32
|
+
canResolve(request, context) {
|
|
33
|
+
if (request.variable.name === exports.PRODUCT_NAME_VARIABLE.name) {
|
|
34
|
+
return 1;
|
|
35
|
+
}
|
|
36
|
+
return -1;
|
|
37
|
+
}
|
|
38
|
+
async resolve(request, context) {
|
|
39
|
+
if (request.variable.name === exports.PRODUCT_NAME_VARIABLE.name) {
|
|
40
|
+
return { variable: request.variable, value: frontend_application_config_provider_1.FrontendApplicationConfigProvider.get().applicationName };
|
|
41
|
+
}
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
exports.ProductNameVariableContribution = ProductNameVariableContribution;
|
|
46
|
+
exports.ProductNameVariableContribution = ProductNameVariableContribution = tslib_1.__decorate([
|
|
47
|
+
(0, inversify_1.injectable)()
|
|
48
|
+
], ProductNameVariableContribution);
|
|
49
|
+
//# sourceMappingURL=product-name-variable-contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-name-variable-contribution.js","sourceRoot":"","sources":["../../src/browser/product-name-variable-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,sCAAgD;AAChD,uHAAiH;AACjH,4DAA0D;AAG7C,QAAA,qBAAqB,GAAe;IAC7C,EAAE,EAAE,uBAAuB;IAC3B,IAAI,EAAE,aAAa;IACnB,WAAW,EAAE,UAAG,CAAC,QAAQ,CAAC,+CAA+C,EAAE,8DAA8D,CAAC;CAC7I,CAAC;AAGK,IAAM,+BAA+B,GAArC,MAAM,+BAA+B;IACxC,iBAAiB,CAAC,OAA0B;QACxC,OAAO,CAAC,gBAAgB,CAAC,6BAAqB,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,CAAC,OAAoC,EAAE,OAA0B;QACvE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,6BAAqB,CAAC,IAAI,EAAE,CAAC;YACvD,OAAO,CAAC,CAAC;QACb,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACd,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAoC,EAAE,OAA0B;QAC1E,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,KAAK,6BAAqB,CAAC,IAAI,EAAE,CAAC;YACvD,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,wEAAiC,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC;QAC1G,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ,CAAA;AAlBY,0EAA+B;0CAA/B,+BAA+B;IAD3C,IAAA,sBAAU,GAAE;GACA,+BAA+B,CAkB3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-name-variable-contribution.spec.d.ts","sourceRoot":"","sources":["../../src/browser/product-name-variable-contribution.spec.ts"],"names":[],"mappings":"AAuBA,OAAO,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 EclipseSource GmbH and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
|
|
19
|
+
let disableJSDOM = (0, jsdom_1.enableJSDOM)();
|
|
20
|
+
const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
|
|
21
|
+
frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({ applicationName: 'Test IDE' });
|
|
22
|
+
require("reflect-metadata");
|
|
23
|
+
const chai_1 = require("chai");
|
|
24
|
+
const product_name_variable_contribution_1 = require("./product-name-variable-contribution");
|
|
25
|
+
disableJSDOM();
|
|
26
|
+
describe('ProductNameVariableContribution', () => {
|
|
27
|
+
before(() => {
|
|
28
|
+
disableJSDOM = (0, jsdom_1.enableJSDOM)();
|
|
29
|
+
frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({ applicationName: 'Test IDE' });
|
|
30
|
+
});
|
|
31
|
+
after(() => disableJSDOM());
|
|
32
|
+
let contribution;
|
|
33
|
+
beforeEach(() => {
|
|
34
|
+
contribution = new product_name_variable_contribution_1.ProductNameVariableContribution();
|
|
35
|
+
});
|
|
36
|
+
it('should resolve to the configured application name', async () => {
|
|
37
|
+
const result = await contribution.resolve({ variable: product_name_variable_contribution_1.PRODUCT_NAME_VARIABLE }, {});
|
|
38
|
+
(0, chai_1.expect)(result).to.not.be.undefined;
|
|
39
|
+
(0, chai_1.expect)(result.value).to.equal('Test IDE');
|
|
40
|
+
});
|
|
41
|
+
it('should return undefined for unknown variables', async () => {
|
|
42
|
+
const result = await contribution.resolve({ variable: { id: 'other', name: 'other', description: 'other' } }, {});
|
|
43
|
+
(0, chai_1.expect)(result).to.be.undefined;
|
|
44
|
+
});
|
|
45
|
+
it('should return a positive priority from canResolve', async () => {
|
|
46
|
+
const priority = await contribution.canResolve({ variable: product_name_variable_contribution_1.PRODUCT_NAME_VARIABLE }, {});
|
|
47
|
+
(0, chai_1.expect)(priority).to.equal(1);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=product-name-variable-contribution.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"product-name-variable-contribution.spec.js","sourceRoot":"","sources":["../../src/browser/product-name-variable-contribution.spec.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,8DAAiE;AAEjE,IAAI,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;AAEjC,uHAAiH;AACjH,wEAAiC,CAAC,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;AAEvE,4BAA0B;AAE1B,+BAA8B;AAC9B,6FAA8G;AAE9G,YAAY,EAAE,CAAC;AAEf,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC7C,MAAM,CAAC,GAAG,EAAE;QACR,YAAY,GAAG,IAAA,mBAAW,GAAE,CAAC;QAC7B,wEAAiC,CAAC,GAAG,CAAC,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC;IAE5B,IAAI,YAA6C,CAAC;IAElD,UAAU,CAAC,GAAG,EAAE;QACZ,YAAY,GAAG,IAAI,oEAA+B,EAAE,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CACrC,EAAE,QAAQ,EAAE,0DAAqB,EAAE,EACnC,EAAE,CACL,CAAC;QACF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC;QACnC,IAAA,aAAM,EAAC,MAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,CACrC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAClE,EAAE,CACL,CAAC;QACF,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAC1C,EAAE,QAAQ,EAAE,0DAAqB,EAAE,EACnC,EAAE,CACL,CAAC;QACF,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Emitter, Event } from '@theia/core';
|
|
2
|
+
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
3
|
+
import { PreferenceService } from '@theia/core/lib/common/preferences';
|
|
4
|
+
import { WorkspaceTrustService } from '@theia/workspace/lib/browser/workspace-trust-service';
|
|
5
|
+
/**
|
|
6
|
+
* Helper for reading AI preferences that must ignore workspace/folder scopes
|
|
7
|
+
* when the current workspace is not trusted.
|
|
8
|
+
*
|
|
9
|
+
* Writes should continue to go through `PreferenceService` directly; trust only
|
|
10
|
+
* affects reads.
|
|
11
|
+
*/
|
|
12
|
+
export declare class TrustAwarePreferenceReader {
|
|
13
|
+
protected readonly preferences: PreferenceService;
|
|
14
|
+
protected readonly trust: WorkspaceTrustService;
|
|
15
|
+
/**
|
|
16
|
+
* Cached trust flag updated via `onDidChangeWorkspaceTrust`. Defaults to
|
|
17
|
+
* `false` (fail closed): until the initial trust state has resolved, reads
|
|
18
|
+
* return only user/default scope values. Asynchronous callers should
|
|
19
|
+
* `await ready` before their first read.
|
|
20
|
+
*/
|
|
21
|
+
protected trusted: boolean;
|
|
22
|
+
protected readonly _ready: Deferred<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Resolves once the initial workspace trust state has been resolved.
|
|
25
|
+
* Callers that need a deterministic trust state before their first read can
|
|
26
|
+
* await this promise.
|
|
27
|
+
*/
|
|
28
|
+
get ready(): Promise<void>;
|
|
29
|
+
protected readonly onDidChangeTrustEmitter: Emitter<boolean>;
|
|
30
|
+
readonly onDidChangeTrust: Event<boolean>;
|
|
31
|
+
protected init(): void;
|
|
32
|
+
/**
|
|
33
|
+
* Reads the preference, ignoring workspace/folder scopes when the workspace
|
|
34
|
+
* is untrusted. Returns `globalValue ?? defaultValue ?? fallback`.
|
|
35
|
+
*/
|
|
36
|
+
get<T>(preferenceName: string, fallback?: T, resourceUri?: string): T | undefined;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=trust-aware-preference-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trust-aware-preference-reader.d.ts","sourceRoot":"","sources":["../../src/browser/trust-aware-preference-reader.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sDAAsD,CAAC;AAE7F;;;;;;GAMG;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;CAQpF"}
|