@vybestack/llxprt-code 0.7.0 → 0.8.0-nightly.260101.f35159d03
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/dist/package.json +4 -3
- package/dist/src/auth/BucketFailoverHandlerImpl.spec.js +1 -1
- package/dist/src/auth/BucketFailoverHandlerImpl.spec.js.map +1 -1
- package/dist/src/auth/__tests__/oauthManager.safety.test.js +2 -2
- package/dist/src/auth/__tests__/oauthManager.safety.test.js.map +1 -1
- package/dist/src/auth/anthropic-oauth-provider.d.ts +3 -1
- package/dist/src/auth/anthropic-oauth-provider.js +40 -29
- package/dist/src/auth/anthropic-oauth-provider.js.map +1 -1
- package/dist/src/auth/codex-oauth-provider.d.ts +3 -2
- package/dist/src/auth/codex-oauth-provider.js +41 -2
- package/dist/src/auth/codex-oauth-provider.js.map +1 -1
- package/dist/src/auth/gemini-oauth-provider.d.ts +2 -1
- package/dist/src/auth/gemini-oauth-provider.js +5 -1
- package/dist/src/auth/gemini-oauth-provider.js.map +1 -1
- package/dist/src/auth/oauth-manager.bucketFailover.spec.js +1 -1
- package/dist/src/auth/oauth-manager.bucketFailover.spec.js.map +1 -1
- package/dist/src/auth/oauth-manager.bucketRefresh.spec.d.ts +6 -0
- package/dist/src/auth/oauth-manager.bucketRefresh.spec.js +56 -0
- package/dist/src/auth/oauth-manager.bucketRefresh.spec.js.map +1 -0
- package/dist/src/auth/oauth-manager.concurrency.spec.js +1 -1
- package/dist/src/auth/oauth-manager.concurrency.spec.js.map +1 -1
- package/dist/src/auth/oauth-manager.d.ts +19 -2
- package/dist/src/auth/oauth-manager.js +262 -10
- package/dist/src/auth/oauth-manager.js.map +1 -1
- package/dist/src/auth/oauth-manager.logout.spec.js +3 -3
- package/dist/src/auth/oauth-manager.logout.spec.js.map +1 -1
- package/dist/src/auth/oauth-manager.spec.js +2 -1
- package/dist/src/auth/oauth-manager.spec.js.map +1 -1
- package/dist/src/auth/qwen-oauth-provider.d.ts +3 -1
- package/dist/src/auth/qwen-oauth-provider.js +87 -21
- package/dist/src/auth/qwen-oauth-provider.js.map +1 -1
- package/dist/src/commands/extensions/install.js +2 -2
- package/dist/src/commands/extensions/install.js.map +1 -1
- package/dist/src/commands/extensions/install.test.js +28 -28
- package/dist/src/commands/extensions/install.test.js.map +1 -1
- package/dist/src/commands/extensions/link.js +2 -2
- package/dist/src/commands/extensions/link.js.map +1 -1
- package/dist/src/commands/extensions/uninstall.js +1 -1
- package/dist/src/commands/extensions/uninstall.js.map +1 -1
- package/dist/src/commands/mcp/list.js +2 -2
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/config/__tests__/sandboxConfig.test.d.ts +6 -0
- package/dist/src/config/__tests__/sandboxConfig.test.js +81 -0
- package/dist/src/config/__tests__/sandboxConfig.test.js.map +1 -0
- package/dist/src/config/config.d.ts +6 -4
- package/dist/src/config/config.js +50 -13
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.loadMemory.test.js +4 -1
- package/dist/src/config/config.loadMemory.test.js.map +1 -1
- package/dist/src/config/extension.d.ts +19 -18
- package/dist/src/config/extension.js +68 -55
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/config/extensions/extensionEnablement.d.ts +2 -2
- package/dist/src/config/extensions/extensionEnablement.js +1 -1
- package/dist/src/config/extensions/extensionEnablement.js.map +1 -1
- package/dist/src/config/extensions/extensionEnablement.test.js +4 -4
- package/dist/src/config/extensions/extensionEnablement.test.js.map +1 -1
- package/dist/src/config/extensions/github.js +1 -1
- package/dist/src/config/extensions/github.js.map +1 -1
- package/dist/src/config/extensions/github.test.js +5 -0
- package/dist/src/config/extensions/github.test.js.map +1 -1
- package/dist/src/config/extensions/update.js +3 -4
- package/dist/src/config/extensions/update.js.map +1 -1
- package/dist/src/config/sandboxConfig.d.ts +2 -0
- package/dist/src/config/sandboxConfig.js +309 -9
- package/dist/src/config/sandboxConfig.js.map +1 -1
- package/dist/src/config/sandboxProfiles.d.ts +32 -0
- package/dist/src/config/sandboxProfiles.js +81 -0
- package/dist/src/config/sandboxProfiles.js.map +1 -0
- package/dist/src/config/settings.js +56 -1
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +31 -9
- package/dist/src/config/settingsSchema.js +31 -9
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/extensions/extensionAutoUpdater.d.ts +1 -2
- package/dist/src/extensions/extensionAutoUpdater.js +14 -13
- package/dist/src/extensions/extensionAutoUpdater.js.map +1 -1
- package/dist/src/extensions/extensionAutoUpdater.test.js +5 -6
- package/dist/src/extensions/extensionAutoUpdater.test.js.map +1 -1
- package/dist/src/gemini.js +69 -19
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.renderOptions.test.js +1 -1
- package/dist/src/gemini.renderOptions.test.js.map +1 -1
- package/dist/src/gemini.test.js +20 -8
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/integration-tests/__tests__/oauth-buckets.integration.spec.js +2 -2
- package/dist/src/integration-tests/__tests__/oauth-buckets.integration.spec.js.map +1 -1
- package/dist/src/integration-tests/todo-continuation.integration.test.js +3 -3
- package/dist/src/integration-tests/todo-continuation.integration.test.js.map +1 -1
- package/dist/src/nonInteractiveCli.js +47 -11
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/providers/aliases/mistral.config +8 -0
- package/dist/src/runtime/runtimeSettings.js +8 -0
- package/dist/src/runtime/runtimeSettings.js.map +1 -1
- package/dist/src/services/FileCommandLoader.d.ts +1 -1
- package/dist/src/services/FileCommandLoader.js +4 -4
- package/dist/src/services/FileCommandLoader.js.map +1 -1
- package/dist/src/ui/AppContainer.js +66 -9
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.d.ts +1 -1
- package/dist/src/ui/commands/memoryCommand.js +8 -5
- package/dist/src/ui/commands/memoryCommand.js.map +1 -1
- package/dist/src/ui/commands/restoreCommand.js +1 -1
- package/dist/src/ui/commands/restoreCommand.js.map +1 -1
- package/dist/src/ui/components/Composer.js +1 -1
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +3 -3
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.js +10 -4
- package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js +6 -10
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/WorkspaceMigrationDialog.d.ts +2 -2
- package/dist/src/ui/components/WorkspaceMigrationDialog.js +2 -2
- package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -1
- package/dist/src/ui/components/messages/CompressionMessage.js +28 -4
- package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.js +26 -30
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +127 -1
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +4 -5
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.js +25 -9
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useExtensionUpdates.test.js +3 -0
- package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
- package/dist/src/ui/hooks/useFolderTrust.d.ts +4 -1
- package/dist/src/ui/hooks/useFolderTrust.js +18 -3
- package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +55 -5
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useHistoryManager.d.ts +1 -1
- package/dist/src/ui/hooks/useHistoryManager.js +11 -8
- package/dist/src/ui/hooks/useHistoryManager.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js +16 -3
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useWorkspaceMigration.d.ts +2 -2
- package/dist/src/ui/hooks/useWorkspaceMigration.js +13 -8
- package/dist/src/ui/hooks/useWorkspaceMigration.js.map +1 -1
- package/dist/src/ui/oauth-submission.test.js +2 -2
- package/dist/src/ui/oauth-submission.test.js.map +1 -1
- package/dist/src/ui/utils/ui-sizing.d.ts +7 -0
- package/dist/src/ui/utils/ui-sizing.js +22 -0
- package/dist/src/ui/utils/ui-sizing.js.map +1 -0
- package/dist/src/utils/commentJson.d.ts +9 -0
- package/dist/src/utils/commentJson.js +130 -0
- package/dist/src/utils/commentJson.js.map +1 -0
- package/dist/src/utils/commentJson.test.d.ts +6 -0
- package/dist/src/utils/commentJson.test.js +307 -0
- package/dist/src/utils/commentJson.test.js.map +1 -0
- package/dist/src/utils/errors.d.ts +25 -0
- package/dist/src/utils/errors.js +78 -0
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/errors.test.d.ts +6 -0
- package/dist/src/utils/errors.test.js +178 -0
- package/dist/src/utils/errors.test.js.map +1 -0
- package/dist/src/utils/math.d.ts +13 -0
- package/dist/src/utils/math.js +14 -0
- package/dist/src/utils/math.js.map +1 -0
- package/dist/src/utils/sandbox.d.ts +1 -1
- package/dist/src/utils/sandbox.js +186 -13
- package/dist/src/utils/sandbox.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.js +58 -3
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +4 -3
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Copyright 2025 Vybestack LLC
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
-
import { AuthType } from '@vybestack/llxprt-code-core';
|
|
6
|
+
import { AuthType, JsonFormatter, OutputFormat, } from '@vybestack/llxprt-code-core';
|
|
7
7
|
import { USER_SETTINGS_PATH } from './config/settings.js';
|
|
8
8
|
import { validateAuthMethod } from './config/auth.js';
|
|
9
9
|
function getAuthTypeFromEnv() {
|
|
@@ -20,7 +20,62 @@ function getAuthTypeFromEnv() {
|
|
|
20
20
|
}
|
|
21
21
|
return undefined;
|
|
22
22
|
}
|
|
23
|
+
function getEnforcedAuthTypeFromSettings(settings) {
|
|
24
|
+
const enforcedType = settings?.merged?.['security'];
|
|
25
|
+
const enforcedAuth = enforcedType?.['auth'];
|
|
26
|
+
const raw = enforcedAuth?.['enforcedType'];
|
|
27
|
+
if (typeof raw !== 'string') {
|
|
28
|
+
return undefined;
|
|
29
|
+
}
|
|
30
|
+
const trimmed = raw.trim();
|
|
31
|
+
if (trimmed.length === 0) {
|
|
32
|
+
return undefined;
|
|
33
|
+
}
|
|
34
|
+
const validAuthTypes = new Set(Object.values(AuthType));
|
|
35
|
+
if (!validAuthTypes.has(trimmed)) {
|
|
36
|
+
throw new Error(`Invalid security.auth.enforcedType: "${trimmed}". Valid values: ${Array.from(validAuthTypes).join(', ')}`);
|
|
37
|
+
}
|
|
38
|
+
return trimmed;
|
|
39
|
+
}
|
|
40
|
+
function getCurrentGoogleAuthTypeFromEnv() {
|
|
41
|
+
if (process.env.GOOGLE_GENAI_USE_GCA === 'true') {
|
|
42
|
+
return AuthType.LOGIN_WITH_GOOGLE;
|
|
43
|
+
}
|
|
44
|
+
if (process.env.GOOGLE_GENAI_USE_VERTEXAI === 'true') {
|
|
45
|
+
return AuthType.USE_VERTEX_AI;
|
|
46
|
+
}
|
|
47
|
+
if (process.env.GEMINI_API_KEY || process.env.LLXPRT_API_KEY) {
|
|
48
|
+
return AuthType.USE_GEMINI;
|
|
49
|
+
}
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
function reportNonInteractiveAuthError(config, message) {
|
|
53
|
+
const outputFormat = typeof config.getOutputFormat === 'function'
|
|
54
|
+
? config.getOutputFormat()
|
|
55
|
+
: OutputFormat.TEXT;
|
|
56
|
+
if (outputFormat === OutputFormat.JSON) {
|
|
57
|
+
const formatter = new JsonFormatter();
|
|
58
|
+
process.stderr.write(`${formatter.formatError(new Error(message), 1)}\n`);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
console.error(message);
|
|
62
|
+
}
|
|
23
63
|
export async function validateNonInteractiveAuth(configuredAuthType, useExternalAuth, nonInteractiveConfig, settings) {
|
|
64
|
+
let enforcedAuthType;
|
|
65
|
+
try {
|
|
66
|
+
enforcedAuthType = getEnforcedAuthTypeFromSettings(settings);
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
reportNonInteractiveAuthError(nonInteractiveConfig, error instanceof Error ? error.message : String(error));
|
|
70
|
+
process.exit(1);
|
|
71
|
+
}
|
|
72
|
+
if (enforcedAuthType) {
|
|
73
|
+
const currentAuthType = getCurrentGoogleAuthTypeFromEnv();
|
|
74
|
+
if (currentAuthType && enforcedAuthType !== currentAuthType) {
|
|
75
|
+
reportNonInteractiveAuthError(nonInteractiveConfig, `Auth type mismatch: configured auth type is ${enforcedAuthType}, current auth type is ${currentAuthType}.`);
|
|
76
|
+
process.exit(1);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
24
79
|
// Check if a provider is already configured via command line
|
|
25
80
|
const providerManager = nonInteractiveConfig.getProviderManager?.();
|
|
26
81
|
const configProvider = nonInteractiveConfig.getProvider?.();
|
|
@@ -52,13 +107,13 @@ export async function validateNonInteractiveAuth(configuredAuthType, useExternal
|
|
|
52
107
|
}
|
|
53
108
|
const effectiveAuthType = configuredAuthType || getAuthTypeFromEnv();
|
|
54
109
|
if (!effectiveAuthType) {
|
|
55
|
-
|
|
110
|
+
reportNonInteractiveAuthError(nonInteractiveConfig, `Please set an Auth method in your ${USER_SETTINGS_PATH} or specify one of the following environment variables before running: GEMINI_API_KEY, LLXPRT_API_KEY, GOOGLE_GENAI_USE_VERTEXAI, GOOGLE_GENAI_USE_GCA, OPENAI_API_KEY, ANTHROPIC_API_KEY`);
|
|
56
111
|
process.exit(1);
|
|
57
112
|
}
|
|
58
113
|
if (!useExternalAuth) {
|
|
59
114
|
const err = validateAuthMethod(effectiveAuthType);
|
|
60
115
|
if (err != null) {
|
|
61
|
-
|
|
116
|
+
reportNonInteractiveAuthError(nonInteractiveConfig, err);
|
|
62
117
|
process.exit(1);
|
|
63
118
|
}
|
|
64
119
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateNonInterActiveAuth.js","sourceRoot":"","sources":["../../src/validateNonInterActiveAuth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"validateNonInterActiveAuth.js","sourceRoot":"","sources":["../../src/validateNonInterActiveAuth.ts"],"names":[],"mappings":"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"}
|