@georgedong32/ccs 7.67.1 → 8.0.0
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/.claude/commands/opsx/apply.md +152 -0
- package/.claude/commands/opsx/archive.md +157 -0
- package/.claude/commands/opsx/continue.md +114 -0
- package/.claude/commands/opsx/explore.md +173 -0
- package/.claude/commands/opsx/ff.md +97 -0
- package/.claude/commands/opsx/new.md +69 -0
- package/.claude/commands/opsx/propose.md +106 -0
- package/.claude/commands/opsx/sync.md +134 -0
- package/.claude/commands/opsx/verify.md +164 -0
- package/.claude/settings.local.json +47 -1
- package/README.md +49 -4
- package/config/base-claude.settings.json +1 -1
- package/config/base-codebuddy.settings.json +10 -0
- package/config/base-codex.settings.json +4 -4
- package/config/base-cursor.settings.json +10 -0
- package/config/base-gitlab.settings.json +10 -0
- package/config/base-kilo.settings.json +10 -0
- package/dist/api/services/cliproxy-profile-bridge.d.ts.map +1 -1
- package/dist/api/services/cliproxy-profile-bridge.js +9 -10
- package/dist/api/services/cliproxy-profile-bridge.js.map +1 -1
- package/dist/api/services/index.d.ts +1 -0
- package/dist/api/services/index.d.ts.map +1 -1
- package/dist/api/services/index.js +3 -1
- package/dist/api/services/index.js.map +1 -1
- package/dist/api/services/local-runtime-readiness.d.ts +14 -0
- package/dist/api/services/local-runtime-readiness.d.ts.map +1 -0
- package/dist/api/services/local-runtime-readiness.js +89 -0
- package/dist/api/services/local-runtime-readiness.js.map +1 -0
- package/dist/api/services/openrouter-catalog.js +2 -2
- package/dist/api/services/openrouter-catalog.js.map +1 -1
- package/dist/api/services/profile-lifecycle-service.d.ts.map +1 -1
- package/dist/api/services/profile-lifecycle-service.js +6 -6
- package/dist/api/services/profile-lifecycle-service.js.map +1 -1
- package/dist/api/services/profile-lifecycle-validation.js +1 -1
- package/dist/api/services/profile-lifecycle-validation.js.map +1 -1
- package/dist/api/services/profile-reader.d.ts.map +1 -1
- package/dist/api/services/profile-reader.js +14 -15
- package/dist/api/services/profile-reader.js.map +1 -1
- package/dist/api/services/profile-writer.d.ts +1 -1
- package/dist/api/services/profile-writer.d.ts.map +1 -1
- package/dist/api/services/profile-writer.js +25 -19
- package/dist/api/services/profile-writer.js.map +1 -1
- package/dist/auth/account-profile-diagnostics.d.ts +21 -0
- package/dist/auth/account-profile-diagnostics.d.ts.map +1 -0
- package/dist/auth/account-profile-diagnostics.js +130 -0
- package/dist/auth/account-profile-diagnostics.js.map +1 -0
- package/dist/auth/auth-commands.d.ts +2 -1
- package/dist/auth/auth-commands.d.ts.map +1 -1
- package/dist/auth/auth-commands.js +30 -12
- package/dist/auth/auth-commands.js.map +1 -1
- package/dist/auth/commands/backup-command.d.ts.map +1 -1
- package/dist/auth/commands/backup-command.js +7 -2
- package/dist/auth/commands/backup-command.js.map +1 -1
- package/dist/auth/commands/create-command-env.d.ts +1 -0
- package/dist/auth/commands/create-command-env.d.ts.map +1 -1
- package/dist/auth/commands/create-command.d.ts.map +1 -1
- package/dist/auth/commands/create-command.js +23 -19
- package/dist/auth/commands/create-command.js.map +1 -1
- package/dist/auth/commands/default-command.d.ts +1 -1
- package/dist/auth/commands/default-command.d.ts.map +1 -1
- package/dist/auth/commands/default-command.js +13 -5
- package/dist/auth/commands/default-command.js.map +1 -1
- package/dist/auth/commands/index.d.ts +1 -0
- package/dist/auth/commands/index.d.ts.map +1 -1
- package/dist/auth/commands/index.js +3 -1
- package/dist/auth/commands/index.js.map +1 -1
- package/dist/auth/commands/list-command.d.ts.map +1 -1
- package/dist/auth/commands/list-command.js +16 -3
- package/dist/auth/commands/list-command.js.map +1 -1
- package/dist/auth/commands/remove-command.d.ts.map +1 -1
- package/dist/auth/commands/remove-command.js +7 -3
- package/dist/auth/commands/remove-command.js.map +1 -1
- package/dist/auth/commands/resources-command.d.ts +3 -0
- package/dist/auth/commands/resources-command.d.ts.map +1 -0
- package/dist/auth/commands/resources-command.js +115 -0
- package/dist/auth/commands/resources-command.js.map +1 -0
- package/dist/auth/commands/show-command.d.ts.map +1 -1
- package/dist/auth/commands/show-command.js +54 -3
- package/dist/auth/commands/show-command.js.map +1 -1
- package/dist/auth/commands/types.d.ts +31 -1
- package/dist/auth/commands/types.d.ts.map +1 -1
- package/dist/auth/commands/types.js +41 -2
- package/dist/auth/commands/types.js.map +1 -1
- package/dist/auth/profile-continuity-inheritance.d.ts.map +1 -1
- package/dist/auth/profile-continuity-inheritance.js +6 -5
- package/dist/auth/profile-continuity-inheritance.js.map +1 -1
- package/dist/auth/profile-detector.d.ts +2 -3
- package/dist/auth/profile-detector.d.ts.map +1 -1
- package/dist/auth/profile-detector.js +25 -25
- package/dist/auth/profile-detector.js.map +1 -1
- package/dist/auth/profile-registry.d.ts +2 -0
- package/dist/auth/profile-registry.d.ts.map +1 -1
- package/dist/auth/profile-registry.js +29 -17
- package/dist/auth/profile-registry.js.map +1 -1
- package/dist/auth/resume-lane-diagnostics.d.ts.map +1 -1
- package/dist/auth/resume-lane-diagnostics.js +2 -2
- package/dist/auth/resume-lane-diagnostics.js.map +1 -1
- package/dist/auth/shared-resource-policy.d.ts +20 -0
- package/dist/auth/shared-resource-policy.d.ts.map +1 -0
- package/dist/auth/shared-resource-policy.js +69 -0
- package/dist/auth/shared-resource-policy.js.map +1 -0
- package/dist/bin/ccsxp-runtime.d.ts +9 -0
- package/dist/bin/ccsxp-runtime.d.ts.map +1 -1
- package/dist/bin/ccsxp-runtime.js +62 -3
- package/dist/bin/ccsxp-runtime.js.map +1 -1
- package/dist/ccs.js +65 -1024
- package/dist/ccs.js.map +1 -1
- package/dist/channels/official-channels-ids.d.ts +21 -0
- package/dist/channels/official-channels-ids.d.ts.map +1 -0
- package/dist/channels/official-channels-ids.js +46 -0
- package/dist/channels/official-channels-ids.js.map +1 -0
- package/dist/channels/official-channels-runtime.d.ts +3 -5
- package/dist/channels/official-channels-runtime.d.ts.map +1 -1
- package/dist/channels/official-channels-runtime.js +25 -29
- package/dist/channels/official-channels-runtime.js.map +1 -1
- package/dist/channels/official-channels-store.d.ts +1 -0
- package/dist/channels/official-channels-store.d.ts.map +1 -1
- package/dist/channels/official-channels-store.js +5 -6
- package/dist/channels/official-channels-store.js.map +1 -1
- package/dist/cliproxy/accounts/account-manager.d.ts +16 -0
- package/dist/cliproxy/accounts/account-manager.d.ts.map +1 -0
- package/dist/cliproxy/accounts/account-manager.js +51 -0
- package/dist/cliproxy/accounts/account-manager.js.map +1 -0
- package/dist/cliproxy/accounts/account-safety.d.ts +103 -0
- package/dist/cliproxy/accounts/account-safety.d.ts.map +1 -0
- package/dist/cliproxy/accounts/account-safety.js +614 -0
- package/dist/cliproxy/accounts/account-safety.js.map +1 -0
- package/dist/cliproxy/accounts/account-stats-key.d.ts.map +1 -0
- package/dist/cliproxy/accounts/account-stats-key.js.map +1 -0
- package/dist/cliproxy/accounts/email-account-identity.d.ts.map +1 -1
- package/dist/cliproxy/accounts/email-account-identity.js +22 -2
- package/dist/cliproxy/accounts/email-account-identity.js.map +1 -1
- package/dist/cliproxy/accounts/registry.js +1 -1
- package/dist/cliproxy/accounts/registry.js.map +1 -1
- package/dist/cliproxy/accounts/token-file-ops.js +1 -1
- package/dist/cliproxy/accounts/token-file-ops.js.map +1 -1
- package/dist/cliproxy/accounts/types.d.ts +1 -1
- package/dist/cliproxy/accounts/types.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.d.ts +38 -0
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.js +131 -0
- package/dist/cliproxy/ai-providers/codex-plan-compatibility.js.map +1 -0
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts +71 -0
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js +565 -0
- package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js.map +1 -0
- package/dist/cliproxy/ai-providers/config-store.js +3 -3
- package/dist/cliproxy/ai-providers/config-store.js.map +1 -1
- package/dist/cliproxy/ai-providers/managed-model-prefixes.d.ts +7 -0
- package/dist/cliproxy/ai-providers/managed-model-prefixes.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/managed-model-prefixes.js +116 -0
- package/dist/cliproxy/ai-providers/managed-model-prefixes.js.map +1 -0
- package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts +108 -0
- package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/model-id-normalizer.js +293 -0
- package/dist/cliproxy/ai-providers/model-id-normalizer.js.map +1 -0
- package/dist/cliproxy/ai-providers/openai-compat-manager.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/openai-compat-manager.js +203 -0
- package/dist/cliproxy/ai-providers/openai-compat-manager.js.map +1 -0
- package/dist/cliproxy/ai-providers/schema-sanitizer.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/schema-sanitizer.js.map +1 -0
- package/dist/cliproxy/ai-providers/service.d.ts.map +1 -1
- package/dist/cliproxy/ai-providers/service.js +10 -3
- package/dist/cliproxy/ai-providers/service.js.map +1 -1
- package/dist/cliproxy/ai-providers/tool-name-mapper.d.ts +108 -0
- package/dist/cliproxy/ai-providers/tool-name-mapper.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/tool-name-mapper.js +163 -0
- package/dist/cliproxy/ai-providers/tool-name-mapper.js.map +1 -0
- package/dist/cliproxy/ai-providers/tool-name-sanitizer.d.ts +66 -0
- package/dist/cliproxy/ai-providers/tool-name-sanitizer.d.ts.map +1 -0
- package/dist/cliproxy/ai-providers/tool-name-sanitizer.js +138 -0
- package/dist/cliproxy/ai-providers/tool-name-sanitizer.js.map +1 -0
- package/dist/cliproxy/auth/antigravity-responsibility.d.ts.map +1 -0
- package/dist/cliproxy/auth/antigravity-responsibility.js +171 -0
- package/dist/cliproxy/auth/antigravity-responsibility.js.map +1 -0
- package/dist/cliproxy/auth/auth-handler.d.ts +31 -0
- package/dist/cliproxy/auth/auth-handler.d.ts.map +1 -0
- package/dist/cliproxy/auth/auth-handler.js +60 -0
- package/dist/cliproxy/auth/auth-handler.js.map +1 -0
- package/dist/cliproxy/auth/auth-session-manager.d.ts +51 -0
- package/dist/cliproxy/auth/auth-session-manager.d.ts.map +1 -0
- package/dist/cliproxy/auth/auth-session-manager.js +141 -0
- package/dist/cliproxy/auth/auth-session-manager.js.map +1 -0
- package/dist/cliproxy/auth/auth-token-manager.d.ts.map +1 -0
- package/dist/cliproxy/auth/auth-token-manager.js +184 -0
- package/dist/cliproxy/auth/auth-token-manager.js.map +1 -0
- package/dist/cliproxy/auth/auth-types.d.ts +40 -7
- package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
- package/dist/cliproxy/auth/auth-types.js +90 -10
- package/dist/cliproxy/auth/auth-types.js.map +1 -1
- package/dist/cliproxy/auth/auth-utils.d.ts +17 -0
- package/dist/cliproxy/auth/auth-utils.d.ts.map +1 -0
- package/dist/cliproxy/auth/auth-utils.js +58 -0
- package/dist/cliproxy/auth/auth-utils.js.map +1 -0
- package/dist/cliproxy/auth/device-code-handler.d.ts.map +1 -0
- package/dist/cliproxy/auth/device-code-handler.js.map +1 -0
- package/dist/cliproxy/auth/gitlab-pat-response.d.ts +9 -0
- package/dist/cliproxy/auth/gitlab-pat-response.d.ts.map +1 -0
- package/dist/cliproxy/auth/gitlab-pat-response.js +64 -0
- package/dist/cliproxy/auth/gitlab-pat-response.js.map +1 -0
- package/dist/cliproxy/auth/kiro-import.js +2 -2
- package/dist/cliproxy/auth/kiro-import.js.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.d.ts +50 -4
- package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-handler.js +443 -51
- package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
- package/dist/cliproxy/auth/oauth-process.d.ts +27 -2
- package/dist/cliproxy/auth/oauth-process.d.ts.map +1 -1
- package/dist/cliproxy/auth/oauth-process.js +409 -53
- package/dist/cliproxy/auth/oauth-process.js.map +1 -1
- package/dist/cliproxy/auth/oauth-start-failure-guidance.d.ts +22 -0
- package/dist/cliproxy/auth/oauth-start-failure-guidance.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-start-failure-guidance.js +82 -0
- package/dist/cliproxy/auth/oauth-start-failure-guidance.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/diagnose-failure.d.ts +24 -0
- package/dist/cliproxy/auth/oauth-trace/diagnose-failure.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/diagnose-failure.js +159 -0
- package/dist/cliproxy/auth/oauth-trace/diagnose-failure.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/index.d.ts +4 -0
- package/dist/cliproxy/auth/oauth-trace/index.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/index.js +14 -0
- package/dist/cliproxy/auth/oauth-trace/index.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/redactor.d.ts +22 -0
- package/dist/cliproxy/auth/oauth-trace/redactor.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/redactor.js +120 -0
- package/dist/cliproxy/auth/oauth-trace/redactor.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-file.d.ts +18 -0
- package/dist/cliproxy/auth/oauth-trace/sink-file.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-file.js +90 -0
- package/dist/cliproxy/auth/oauth-trace/sink-file.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-memory.d.ts +13 -0
- package/dist/cliproxy/auth/oauth-trace/sink-memory.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-memory.js +31 -0
- package/dist/cliproxy/auth/oauth-trace/sink-memory.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-verbose-stdout.d.ts +11 -0
- package/dist/cliproxy/auth/oauth-trace/sink-verbose-stdout.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/sink-verbose-stdout.js +47 -0
- package/dist/cliproxy/auth/oauth-trace/sink-verbose-stdout.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/trace-events.d.ts +51 -0
- package/dist/cliproxy/auth/oauth-trace/trace-events.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/trace-events.js +44 -0
- package/dist/cliproxy/auth/oauth-trace/trace-events.js.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/trace-recorder.d.ts +34 -0
- package/dist/cliproxy/auth/oauth-trace/trace-recorder.d.ts.map +1 -0
- package/dist/cliproxy/auth/oauth-trace/trace-recorder.js +83 -0
- package/dist/cliproxy/auth/oauth-trace/trace-recorder.js.map +1 -0
- package/dist/cliproxy/auth/project-selection-handler.d.ts.map +1 -0
- package/dist/cliproxy/auth/project-selection-handler.js.map +1 -0
- package/dist/cliproxy/auth/provider-entitlement-evidence.d.ts +17 -0
- package/dist/cliproxy/auth/provider-entitlement-evidence.d.ts.map +1 -0
- package/dist/cliproxy/auth/provider-entitlement-evidence.js +55 -0
- package/dist/cliproxy/auth/provider-entitlement-evidence.js.map +1 -0
- package/dist/cliproxy/auth/provider-entitlement-types.d.ts +16 -0
- package/dist/cliproxy/auth/provider-entitlement-types.d.ts.map +1 -0
- package/dist/cliproxy/auth/provider-entitlement-types.js +3 -0
- package/dist/cliproxy/auth/provider-entitlement-types.js.map +1 -0
- package/dist/cliproxy/auth/provider-refreshers/index.d.ts +1 -2
- package/dist/cliproxy/auth/provider-refreshers/index.d.ts.map +1 -1
- package/dist/cliproxy/auth/provider-refreshers/index.js +7 -26
- package/dist/cliproxy/auth/provider-refreshers/index.js.map +1 -1
- package/dist/cliproxy/auth/token-expiry-checker.js +1 -1
- package/dist/cliproxy/auth/token-expiry-checker.js.map +1 -1
- package/dist/cliproxy/auth/token-manager.d.ts +11 -2
- package/dist/cliproxy/auth/token-manager.d.ts.map +1 -1
- package/dist/cliproxy/auth/token-manager.js +117 -68
- package/dist/cliproxy/auth/token-manager.js.map +1 -1
- package/dist/cliproxy/auth/token-refresh-config.d.ts.map +1 -1
- package/dist/cliproxy/auth/token-refresh-config.js +2 -2
- package/dist/cliproxy/auth/token-refresh-config.js.map +1 -1
- package/dist/cliproxy/binary/extractor.js +1 -1
- package/dist/cliproxy/binary/extractor.js.map +1 -1
- package/dist/cliproxy/binary/installer.d.ts +1 -1
- package/dist/cliproxy/binary/installer.d.ts.map +1 -1
- package/dist/cliproxy/binary/installer.js +1 -1
- package/dist/cliproxy/binary/installer.js.map +1 -1
- package/dist/cliproxy/binary/lifecycle.d.ts.map +1 -1
- package/dist/cliproxy/binary/lifecycle.js +18 -6
- package/dist/cliproxy/binary/lifecycle.js.map +1 -1
- package/dist/cliproxy/binary/platform-detector.d.ts +106 -0
- package/dist/cliproxy/binary/platform-detector.d.ts.map +1 -0
- package/dist/cliproxy/binary/platform-detector.js +191 -0
- package/dist/cliproxy/binary/platform-detector.js.map +1 -0
- package/dist/cliproxy/binary/tar-extractor.d.ts.map +1 -1
- package/dist/cliproxy/binary/tar-extractor.js +1 -1
- package/dist/cliproxy/binary/tar-extractor.js.map +1 -1
- package/dist/cliproxy/binary/types.d.ts +3 -3
- package/dist/cliproxy/binary/types.d.ts.map +1 -1
- package/dist/cliproxy/binary/types.js +3 -3
- package/dist/cliproxy/binary/types.js.map +1 -1
- package/dist/cliproxy/binary/version-cache.d.ts +10 -0
- package/dist/cliproxy/binary/version-cache.d.ts.map +1 -1
- package/dist/cliproxy/binary/version-cache.js +31 -9
- package/dist/cliproxy/binary/version-cache.js.map +1 -1
- package/dist/cliproxy/binary/version-checker.d.ts +14 -3
- package/dist/cliproxy/binary/version-checker.d.ts.map +1 -1
- package/dist/cliproxy/binary/version-checker.js +66 -37
- package/dist/cliproxy/binary/version-checker.js.map +1 -1
- package/dist/cliproxy/binary/zip-extractor.d.ts.map +1 -1
- package/dist/cliproxy/binary/zip-extractor.js +1 -1
- package/dist/cliproxy/binary/zip-extractor.js.map +1 -1
- package/dist/cliproxy/binary-manager.d.ts +22 -1
- package/dist/cliproxy/binary-manager.d.ts.map +1 -1
- package/dist/cliproxy/binary-manager.js +126 -19
- package/dist/cliproxy/binary-manager.js.map +1 -1
- package/dist/cliproxy/config/base-config-loader.d.ts +43 -0
- package/dist/cliproxy/config/base-config-loader.d.ts.map +1 -0
- package/dist/cliproxy/config/base-config-loader.js +123 -0
- package/dist/cliproxy/config/base-config-loader.js.map +1 -0
- package/dist/cliproxy/config/composite-validator.d.ts.map +1 -0
- package/dist/cliproxy/config/composite-validator.js +94 -0
- package/dist/cliproxy/config/composite-validator.js.map +1 -0
- package/dist/cliproxy/config/config-generator.d.ts +15 -0
- package/dist/cliproxy/config/config-generator.d.ts.map +1 -0
- package/dist/cliproxy/config/config-generator.js +32 -0
- package/dist/cliproxy/config/config-generator.js.map +1 -0
- package/dist/cliproxy/config/env-builder.d.ts +6 -0
- package/dist/cliproxy/config/env-builder.d.ts.map +1 -1
- package/dist/cliproxy/config/env-builder.js +60 -65
- package/dist/cliproxy/config/env-builder.js.map +1 -1
- package/dist/cliproxy/config/extended-context-config.d.ts +1 -0
- package/dist/cliproxy/config/extended-context-config.d.ts.map +1 -1
- package/dist/cliproxy/config/generator.d.ts +14 -3
- package/dist/cliproxy/config/generator.d.ts.map +1 -1
- package/dist/cliproxy/config/generator.js +96 -19
- package/dist/cliproxy/config/generator.js.map +1 -1
- package/dist/cliproxy/config/model-config.d.ts +31 -0
- package/dist/cliproxy/config/model-config.d.ts.map +1 -0
- package/dist/cliproxy/config/model-config.js +264 -0
- package/dist/cliproxy/config/model-config.js.map +1 -0
- package/dist/cliproxy/config/path-resolver.d.ts +21 -0
- package/dist/cliproxy/config/path-resolver.d.ts.map +1 -1
- package/dist/cliproxy/config/path-resolver.js +45 -5
- package/dist/cliproxy/config/path-resolver.js.map +1 -1
- package/dist/cliproxy/config/port-manager.d.ts +6 -0
- package/dist/cliproxy/config/port-manager.d.ts.map +1 -1
- package/dist/cliproxy/config/port-manager.js +19 -1
- package/dist/cliproxy/config/port-manager.js.map +1 -1
- package/dist/cliproxy/config/thinking-config.d.ts +1 -0
- package/dist/cliproxy/config/thinking-config.d.ts.map +1 -1
- package/dist/cliproxy/config/thinking-config.js +21 -12
- package/dist/cliproxy/config/thinking-config.js.map +1 -1
- package/dist/cliproxy/executor/account-resolution.d.ts +52 -0
- package/dist/cliproxy/executor/account-resolution.d.ts.map +1 -0
- package/dist/cliproxy/executor/account-resolution.js +154 -0
- package/dist/cliproxy/executor/account-resolution.js.map +1 -0
- package/dist/cliproxy/executor/arg-parser.d.ts +96 -0
- package/dist/cliproxy/executor/arg-parser.d.ts.map +1 -0
- package/dist/cliproxy/executor/arg-parser.js +529 -0
- package/dist/cliproxy/executor/arg-parser.js.map +1 -0
- package/dist/cliproxy/executor/auth-coordinator.d.ts +96 -0
- package/dist/cliproxy/executor/auth-coordinator.d.ts.map +1 -0
- package/dist/cliproxy/executor/auth-coordinator.js +342 -0
- package/dist/cliproxy/executor/auth-coordinator.js.map +1 -0
- package/dist/cliproxy/executor/browser-launch-setup.d.ts +36 -0
- package/dist/cliproxy/executor/browser-launch-setup.d.ts.map +1 -0
- package/dist/cliproxy/executor/browser-launch-setup.js +80 -0
- package/dist/cliproxy/executor/browser-launch-setup.js.map +1 -0
- package/dist/cliproxy/executor/claude-launcher.d.ts +55 -0
- package/dist/cliproxy/executor/claude-launcher.d.ts.map +1 -0
- package/dist/cliproxy/executor/claude-launcher.js +125 -0
- package/dist/cliproxy/executor/claude-launcher.js.map +1 -0
- package/dist/cliproxy/executor/cliproxy-executor.d.ts +16 -0
- package/dist/cliproxy/executor/cliproxy-executor.d.ts.map +1 -0
- package/dist/cliproxy/executor/cliproxy-executor.js +27 -0
- package/dist/cliproxy/executor/cliproxy-executor.js.map +1 -0
- package/dist/cliproxy/executor/env-resolver.d.ts +7 -5
- package/dist/cliproxy/executor/env-resolver.d.ts.map +1 -1
- package/dist/cliproxy/executor/env-resolver.js +7 -6
- package/dist/cliproxy/executor/env-resolver.js.map +1 -1
- package/dist/cliproxy/executor/https-tunnel-policy.d.ts +17 -0
- package/dist/cliproxy/executor/https-tunnel-policy.d.ts.map +1 -0
- package/dist/cliproxy/executor/https-tunnel-policy.js +20 -0
- package/dist/cliproxy/executor/https-tunnel-policy.js.map +1 -0
- package/dist/cliproxy/executor/index.d.ts +6 -0
- package/dist/cliproxy/executor/index.d.ts.map +1 -1
- package/dist/cliproxy/executor/index.js +144 -693
- package/dist/cliproxy/executor/index.js.map +1 -1
- package/dist/cliproxy/executor/lifecycle-manager.js +1 -1
- package/dist/cliproxy/executor/lifecycle-manager.js.map +1 -1
- package/dist/cliproxy/executor/model-warnings.d.ts +22 -0
- package/dist/cliproxy/executor/model-warnings.d.ts.map +1 -0
- package/dist/cliproxy/executor/model-warnings.js +67 -0
- package/dist/cliproxy/executor/model-warnings.js.map +1 -0
- package/dist/cliproxy/executor/proxy-chain-builder.d.ts +71 -0
- package/dist/cliproxy/executor/proxy-chain-builder.d.ts.map +1 -0
- package/dist/cliproxy/executor/proxy-chain-builder.js +143 -0
- package/dist/cliproxy/executor/proxy-chain-builder.js.map +1 -0
- package/dist/cliproxy/executor/proxy-resolver.d.ts +44 -0
- package/dist/cliproxy/executor/proxy-resolver.d.ts.map +1 -0
- package/dist/cliproxy/executor/proxy-resolver.js +173 -0
- package/dist/cliproxy/executor/proxy-resolver.js.map +1 -0
- package/dist/cliproxy/executor/retry-handler.js +4 -4
- package/dist/cliproxy/executor/retry-handler.js.map +1 -1
- package/dist/cliproxy/executor/session-bridge.d.ts +16 -1
- package/dist/cliproxy/executor/session-bridge.d.ts.map +1 -1
- package/dist/cliproxy/executor/session-bridge.js +92 -57
- package/dist/cliproxy/executor/session-bridge.js.map +1 -1
- package/dist/cliproxy/index.d.ts +32 -32
- package/dist/cliproxy/index.d.ts.map +1 -1
- package/dist/cliproxy/index.js +20 -20
- package/dist/cliproxy/index.js.map +1 -1
- package/dist/cliproxy/management/management-api-client.d.ts +90 -0
- package/dist/cliproxy/management/management-api-client.d.ts.map +1 -0
- package/dist/cliproxy/management/management-api-client.js +396 -0
- package/dist/cliproxy/management/management-api-client.js.map +1 -0
- package/dist/cliproxy/management/management-api-types.d.ts.map +1 -0
- package/dist/cliproxy/management/management-api-types.js.map +1 -0
- package/dist/cliproxy/management/remote-token-uploader.d.ts.map +1 -0
- package/dist/cliproxy/management/remote-token-uploader.js +178 -0
- package/dist/cliproxy/management/remote-token-uploader.js.map +1 -0
- package/dist/cliproxy/model-catalog.d.ts +3 -1
- package/dist/cliproxy/model-catalog.d.ts.map +1 -1
- package/dist/cliproxy/model-catalog.js +60 -59
- package/dist/cliproxy/model-catalog.js.map +1 -1
- package/dist/cliproxy/provider-capabilities.d.ts +3 -0
- package/dist/cliproxy/provider-capabilities.d.ts.map +1 -1
- package/dist/cliproxy/provider-capabilities.js +63 -3
- package/dist/cliproxy/provider-capabilities.js.map +1 -1
- package/dist/cliproxy/proxy/https-tunnel-proxy.d.ts.map +1 -0
- package/dist/cliproxy/proxy/https-tunnel-proxy.js +229 -0
- package/dist/cliproxy/proxy/https-tunnel-proxy.js.map +1 -0
- package/dist/cliproxy/proxy/proxy-config-resolver.d.ts +87 -0
- package/dist/cliproxy/proxy/proxy-config-resolver.d.ts.map +1 -0
- package/dist/cliproxy/proxy/proxy-config-resolver.js +254 -0
- package/dist/cliproxy/proxy/proxy-config-resolver.js.map +1 -0
- package/dist/cliproxy/proxy/proxy-detector.d.ts +72 -0
- package/dist/cliproxy/proxy/proxy-detector.d.ts.map +1 -0
- package/dist/cliproxy/proxy/proxy-detector.js +200 -0
- package/dist/cliproxy/proxy/proxy-detector.js.map +1 -0
- package/dist/cliproxy/proxy/proxy-target-resolver.d.ts.map +1 -0
- package/dist/cliproxy/proxy/proxy-target-resolver.js +108 -0
- package/dist/cliproxy/proxy/proxy-target-resolver.js.map +1 -0
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts +82 -0
- package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts.map +1 -0
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js +668 -0
- package/dist/cliproxy/proxy/tool-sanitization-proxy.js.map +1 -0
- package/dist/cliproxy/quota/gemini-cli-quota-normalizer.d.ts.map +1 -0
- package/dist/cliproxy/quota/gemini-cli-quota-normalizer.js +122 -0
- package/dist/cliproxy/quota/gemini-cli-quota-normalizer.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-claude-normalizer.d.ts +14 -0
- package/dist/cliproxy/quota/quota-fetcher-claude-normalizer.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-claude-normalizer.js +322 -0
- package/dist/cliproxy/quota/quota-fetcher-claude-normalizer.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-claude.d.ts +21 -0
- package/dist/cliproxy/quota/quota-fetcher-claude.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-claude.js +292 -0
- package/dist/cliproxy/quota/quota-fetcher-claude.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-codex.d.ts +84 -0
- package/dist/cliproxy/quota/quota-fetcher-codex.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-codex.js +651 -0
- package/dist/cliproxy/quota/quota-fetcher-codex.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js +828 -0
- package/dist/cliproxy/quota/quota-fetcher-gemini-cli.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-ghcp.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher-ghcp.js +218 -0
- package/dist/cliproxy/quota/quota-fetcher-ghcp.js.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher.d.ts +117 -0
- package/dist/cliproxy/quota/quota-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-fetcher.js +771 -0
- package/dist/cliproxy/quota/quota-fetcher.js.map +1 -0
- package/dist/cliproxy/quota/quota-manager.d.ts +109 -0
- package/dist/cliproxy/quota/quota-manager.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-manager.js +672 -0
- package/dist/cliproxy/quota/quota-manager.js.map +1 -0
- package/dist/cliproxy/quota/quota-response-cache.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-response-cache.js.map +1 -0
- package/dist/cliproxy/quota/quota-types.d.ts +262 -0
- package/dist/cliproxy/quota/quota-types.d.ts.map +1 -0
- package/dist/cliproxy/quota/quota-types.js.map +1 -0
- package/dist/cliproxy/routing/routing-strategy-http.d.ts +8 -0
- package/dist/cliproxy/routing/routing-strategy-http.d.ts.map +1 -0
- package/dist/cliproxy/routing/routing-strategy-http.js +120 -0
- package/dist/cliproxy/routing/routing-strategy-http.js.map +1 -0
- package/dist/cliproxy/routing/routing-strategy.d.ts +41 -0
- package/dist/cliproxy/routing/routing-strategy.d.ts.map +1 -0
- package/dist/cliproxy/routing/routing-strategy.js +272 -0
- package/dist/cliproxy/routing/routing-strategy.js.map +1 -0
- package/dist/cliproxy/service-manager.d.ts +17 -1
- package/dist/cliproxy/service-manager.d.ts.map +1 -1
- package/dist/cliproxy/service-manager.js +19 -11
- package/dist/cliproxy/service-manager.js.map +1 -1
- package/dist/cliproxy/services/binary-service.d.ts.map +1 -1
- package/dist/cliproxy/services/binary-service.js +16 -9
- package/dist/cliproxy/services/binary-service.js.map +1 -1
- package/dist/cliproxy/services/catalog-cache.d.ts +47 -0
- package/dist/cliproxy/services/catalog-cache.d.ts.map +1 -0
- package/dist/cliproxy/services/catalog-cache.js +347 -0
- package/dist/cliproxy/services/catalog-cache.js.map +1 -0
- package/dist/cliproxy/services/catalog-routing.d.ts +12 -0
- package/dist/cliproxy/services/catalog-routing.d.ts.map +1 -0
- package/dist/cliproxy/services/catalog-routing.js +19 -0
- package/dist/cliproxy/services/catalog-routing.js.map +1 -0
- package/dist/cliproxy/services/oauth-usage-log-transformer.d.ts +4 -0
- package/dist/cliproxy/services/oauth-usage-log-transformer.d.ts.map +1 -0
- package/dist/cliproxy/services/oauth-usage-log-transformer.js +162 -0
- package/dist/cliproxy/services/oauth-usage-log-transformer.js.map +1 -0
- package/dist/cliproxy/services/proxy-lifecycle-service.d.ts +1 -0
- package/dist/cliproxy/services/proxy-lifecycle-service.d.ts.map +1 -1
- package/dist/cliproxy/services/proxy-lifecycle-service.js +6 -6
- package/dist/cliproxy/services/proxy-lifecycle-service.js.map +1 -1
- package/dist/cliproxy/services/remote-auth-fetcher.d.ts +30 -0
- package/dist/cliproxy/services/remote-auth-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/services/remote-auth-fetcher.js +177 -0
- package/dist/cliproxy/services/remote-auth-fetcher.js.map +1 -0
- package/dist/cliproxy/services/remote-proxy-client.d.ts.map +1 -0
- package/dist/cliproxy/services/remote-proxy-client.js +281 -0
- package/dist/cliproxy/services/remote-proxy-client.js.map +1 -0
- package/dist/cliproxy/services/startup-lock.d.ts.map +1 -0
- package/dist/cliproxy/services/startup-lock.js +220 -0
- package/dist/cliproxy/services/startup-lock.js.map +1 -0
- package/dist/cliproxy/services/stats-fetcher.d.ts +162 -0
- package/dist/cliproxy/services/stats-fetcher.d.ts.map +1 -0
- package/dist/cliproxy/services/stats-fetcher.js +354 -0
- package/dist/cliproxy/services/stats-fetcher.js.map +1 -0
- package/dist/cliproxy/services/stats-transformer.d.ts.map +1 -0
- package/dist/cliproxy/services/stats-transformer.js +224 -0
- package/dist/cliproxy/services/stats-transformer.js.map +1 -0
- package/dist/cliproxy/services/usage-compatibility-transformer.d.ts +12 -0
- package/dist/cliproxy/services/usage-compatibility-transformer.d.ts.map +1 -0
- package/dist/cliproxy/services/usage-compatibility-transformer.js +458 -0
- package/dist/cliproxy/services/usage-compatibility-transformer.js.map +1 -0
- package/dist/cliproxy/services/variant-config-adapter.d.ts.map +1 -1
- package/dist/cliproxy/services/variant-config-adapter.js +11 -11
- package/dist/cliproxy/services/variant-config-adapter.js.map +1 -1
- package/dist/cliproxy/services/variant-service.d.ts +2 -1
- package/dist/cliproxy/services/variant-service.d.ts.map +1 -1
- package/dist/cliproxy/services/variant-service.js +21 -24
- package/dist/cliproxy/services/variant-service.js.map +1 -1
- package/dist/cliproxy/services/variant-settings.d.ts.map +1 -1
- package/dist/cliproxy/services/variant-settings.js +53 -42
- package/dist/cliproxy/services/variant-settings.js.map +1 -1
- package/dist/cliproxy/session-tracker.js +2 -2
- package/dist/cliproxy/session-tracker.js.map +1 -1
- package/dist/cliproxy/sync/auto-sync-watcher.js +3 -4
- package/dist/cliproxy/sync/auto-sync-watcher.js.map +1 -1
- package/dist/cliproxy/sync/local-config-sync.js +1 -1
- package/dist/cliproxy/sync/local-config-sync.js.map +1 -1
- package/dist/cliproxy/sync/profile-mapper.d.ts +1 -1
- package/dist/cliproxy/sync/profile-mapper.d.ts.map +1 -1
- package/dist/cliproxy/sync/profile-mapper.js +23 -2
- package/dist/cliproxy/sync/profile-mapper.js.map +1 -1
- package/dist/cliproxy/thinking-validator.d.ts +6 -1
- package/dist/cliproxy/thinking-validator.d.ts.map +1 -1
- package/dist/cliproxy/thinking-validator.js +22 -2
- package/dist/cliproxy/thinking-validator.js.map +1 -1
- package/dist/cliproxy/types/binary-types.d.ts +48 -0
- package/dist/cliproxy/types/binary-types.d.ts.map +1 -0
- package/dist/cliproxy/types/binary-types.js +6 -0
- package/dist/cliproxy/types/binary-types.js.map +1 -0
- package/dist/cliproxy/types/config-types.d.ts +89 -0
- package/dist/cliproxy/types/config-types.d.ts.map +1 -0
- package/dist/cliproxy/types/config-types.js +6 -0
- package/dist/cliproxy/types/config-types.js.map +1 -0
- package/dist/cliproxy/types/index.d.ts +5 -0
- package/dist/cliproxy/types/index.d.ts.map +1 -0
- package/dist/cliproxy/types/index.js +21 -0
- package/dist/cliproxy/types/index.js.map +1 -0
- package/dist/cliproxy/types/platform-types.d.ts +17 -0
- package/dist/cliproxy/types/platform-types.d.ts.map +1 -0
- package/dist/cliproxy/types/platform-types.js +6 -0
- package/dist/cliproxy/types/platform-types.js.map +1 -0
- package/dist/cliproxy/types/provider-types.d.ts +27 -0
- package/dist/cliproxy/types/provider-types.d.ts.map +1 -0
- package/dist/cliproxy/types/provider-types.js +16 -0
- package/dist/cliproxy/types/provider-types.js.map +1 -0
- package/dist/cliproxy/types.d.ts +4 -255
- package/dist/cliproxy/types.d.ts.map +1 -1
- package/dist/cliproxy/types.js +18 -7
- package/dist/cliproxy/types.js.map +1 -1
- package/dist/commands/api-command/create-command.d.ts +3 -0
- package/dist/commands/api-command/create-command.d.ts.map +1 -1
- package/dist/commands/api-command/create-command.js +24 -7
- package/dist/commands/api-command/create-command.js.map +1 -1
- package/dist/commands/api-command/help.d.ts.map +1 -1
- package/dist/commands/api-command/help.js +5 -0
- package/dist/commands/api-command/help.js.map +1 -1
- package/dist/commands/api-command/shared.d.ts +2 -1
- package/dist/commands/api-command/shared.d.ts.map +1 -1
- package/dist/commands/api-command/shared.js +9 -0
- package/dist/commands/api-command/shared.js.map +1 -1
- package/dist/commands/browser-command.d.ts +5 -0
- package/dist/commands/browser-command.d.ts.map +1 -0
- package/dist/commands/browser-command.js +349 -0
- package/dist/commands/browser-command.js.map +1 -0
- package/dist/commands/cleanup-command.d.ts +1 -1
- package/dist/commands/cleanup-command.d.ts.map +1 -1
- package/dist/commands/cleanup-command.js +58 -35
- package/dist/commands/cleanup-command.js.map +1 -1
- package/dist/commands/cliproxy/auth-subcommand.js +1 -1
- package/dist/commands/cliproxy/auth-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/catalog-subcommand.d.ts +6 -0
- package/dist/commands/cliproxy/catalog-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/catalog-subcommand.js +112 -46
- package/dist/commands/cliproxy/catalog-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/help-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/help-subcommand.js +15 -4
- package/dist/commands/cliproxy/help-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/index.d.ts.map +1 -1
- package/dist/commands/cliproxy/index.js +35 -7
- package/dist/commands/cliproxy/index.js.map +1 -1
- package/dist/commands/cliproxy/install-subcommand.js +2 -2
- package/dist/commands/cliproxy/install-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.js +6 -6
- package/dist/commands/cliproxy/proxy-lifecycle-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/quota-subcommand.d.ts +3 -1
- package/dist/commands/cliproxy/quota-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/quota-subcommand.js +95 -32
- package/dist/commands/cliproxy/quota-subcommand.js.map +1 -1
- package/dist/commands/cliproxy/routing-subcommand.d.ts +7 -0
- package/dist/commands/cliproxy/routing-subcommand.d.ts.map +1 -0
- package/dist/commands/cliproxy/routing-subcommand.js +193 -0
- package/dist/commands/cliproxy/routing-subcommand.js.map +1 -0
- package/dist/commands/cliproxy/variant-subcommand.d.ts.map +1 -1
- package/dist/commands/cliproxy/variant-subcommand.js +86 -13
- package/dist/commands/cliproxy/variant-subcommand.js.map +1 -1
- package/dist/commands/command-catalog.d.ts +6 -5
- package/dist/commands/command-catalog.d.ts.map +1 -1
- package/dist/commands/command-catalog.js +45 -8
- package/dist/commands/command-catalog.js.map +1 -1
- package/dist/commands/completion-backend.d.ts.map +1 -1
- package/dist/commands/completion-backend.js +62 -1
- package/dist/commands/completion-backend.js.map +1 -1
- package/dist/commands/config-auth/disable-command.d.ts.map +1 -1
- package/dist/commands/config-auth/disable-command.js +3 -3
- package/dist/commands/config-auth/disable-command.js.map +1 -1
- package/dist/commands/config-auth/setup-command.d.ts.map +1 -1
- package/dist/commands/config-auth/setup-command.js +2 -2
- package/dist/commands/config-auth/setup-command.js.map +1 -1
- package/dist/commands/config-auth/show-command.js +2 -2
- package/dist/commands/config-auth/show-command.js.map +1 -1
- package/dist/commands/config-channels-command.d.ts.map +1 -1
- package/dist/commands/config-channels-command.js +4 -4
- package/dist/commands/config-channels-command.js.map +1 -1
- package/dist/commands/config-command-options.d.ts.map +1 -1
- package/dist/commands/config-command-options.js +4 -2
- package/dist/commands/config-command-options.js.map +1 -1
- package/dist/commands/config-command.d.ts +1 -1
- package/dist/commands/config-command.d.ts.map +1 -1
- package/dist/commands/config-command.js +28 -5
- package/dist/commands/config-command.js.map +1 -1
- package/dist/commands/config-dashboard-host.d.ts +1 -0
- package/dist/commands/config-dashboard-host.d.ts.map +1 -1
- package/dist/commands/config-dashboard-host.js +16 -3
- package/dist/commands/config-dashboard-host.js.map +1 -1
- package/dist/commands/config-image-analysis-command.d.ts.map +1 -1
- package/dist/commands/config-image-analysis-command.js +4 -4
- package/dist/commands/config-image-analysis-command.js.map +1 -1
- package/dist/commands/config-thinking-command.d.ts.map +1 -1
- package/dist/commands/config-thinking-command.js +5 -5
- package/dist/commands/config-thinking-command.js.map +1 -1
- package/dist/commands/copilot-command.d.ts.map +1 -1
- package/dist/commands/copilot-command.js +7 -5
- package/dist/commands/copilot-command.js.map +1 -1
- package/dist/commands/cursor-command-display.d.ts +2 -0
- package/dist/commands/cursor-command-display.d.ts.map +1 -1
- package/dist/commands/cursor-command-display.js +63 -30
- package/dist/commands/cursor-command-display.js.map +1 -1
- package/dist/commands/cursor-command.d.ts.map +1 -1
- package/dist/commands/cursor-command.js +67 -61
- package/dist/commands/cursor-command.js.map +1 -1
- package/dist/commands/docker/up-subcommand.js +1 -1
- package/dist/commands/docker/up-subcommand.js.map +1 -1
- package/dist/commands/doctor-command.d.ts.map +1 -1
- package/dist/commands/doctor-command.js +9 -0
- package/dist/commands/doctor-command.js.map +1 -1
- package/dist/commands/env-command.d.ts.map +1 -1
- package/dist/commands/env-command.js +2 -2
- package/dist/commands/env-command.js.map +1 -1
- package/dist/commands/help-command.d.ts +2 -0
- package/dist/commands/help-command.d.ts.map +1 -1
- package/dist/commands/help-command.js +126 -5
- package/dist/commands/help-command.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +3 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/migrate-command.d.ts.map +1 -1
- package/dist/commands/migrate-command.js +2 -2
- package/dist/commands/migrate-command.js.map +1 -1
- package/dist/commands/proxy-command.d.ts +3 -0
- package/dist/commands/proxy-command.d.ts.map +1 -0
- package/dist/commands/proxy-command.js +237 -0
- package/dist/commands/proxy-command.js.map +1 -0
- package/dist/commands/root-command-router.d.ts.map +1 -1
- package/dist/commands/root-command-router.js +14 -0
- package/dist/commands/root-command-router.js.map +1 -1
- package/dist/commands/setup-command.d.ts.map +1 -1
- package/dist/commands/setup-command.js +6 -7
- package/dist/commands/setup-command.js.map +1 -1
- package/dist/commands/sync-command.d.ts.map +1 -1
- package/dist/commands/sync-command.js +3 -2
- package/dist/commands/sync-command.js.map +1 -1
- package/dist/commands/tokens-command.d.ts.map +1 -1
- package/dist/commands/tokens-command.js +27 -38
- package/dist/commands/tokens-command.js.map +1 -1
- package/dist/commands/update-command.d.ts +22 -5
- package/dist/commands/update-command.d.ts.map +1 -1
- package/dist/commands/update-command.js +211 -159
- package/dist/commands/update-command.js.map +1 -1
- package/dist/commands/version-command.d.ts.map +1 -1
- package/dist/commands/version-command.js +2 -1
- package/dist/commands/version-command.js.map +1 -1
- package/dist/config/config-loader-facade.d.ts +57 -0
- package/dist/config/config-loader-facade.d.ts.map +1 -0
- package/dist/config/config-loader-facade.js +131 -0
- package/dist/config/config-loader-facade.js.map +1 -0
- package/dist/config/loader/config-getters.d.ts +121 -0
- package/dist/config/loader/config-getters.d.ts.map +1 -0
- package/dist/config/loader/config-getters.js +260 -0
- package/dist/config/loader/config-getters.js.map +1 -0
- package/dist/config/loader/defaults-merger.d.ts +21 -0
- package/dist/config/loader/defaults-merger.d.ts.map +1 -0
- package/dist/config/loader/defaults-merger.js +278 -0
- package/dist/config/loader/defaults-merger.js.map +1 -0
- package/dist/config/loader/io-locks.d.ts +76 -0
- package/dist/config/loader/io-locks.d.ts.map +1 -0
- package/dist/config/loader/io-locks.js +297 -0
- package/dist/config/loader/io-locks.js.map +1 -0
- package/dist/config/loader/normalizers.d.ts +40 -0
- package/dist/config/loader/normalizers.d.ts.map +1 -0
- package/dist/config/loader/normalizers.js +172 -0
- package/dist/config/loader/normalizers.js.map +1 -0
- package/dist/config/loader/yaml-serializer.d.ts +19 -0
- package/dist/config/loader/yaml-serializer.d.ts.map +1 -0
- package/dist/config/loader/yaml-serializer.js +301 -0
- package/dist/config/loader/yaml-serializer.js.map +1 -0
- package/dist/config/migration-manager.d.ts.map +1 -1
- package/dist/config/migration-manager.js +14 -1
- package/dist/config/migration-manager.js.map +1 -1
- package/dist/config/reserved-names.d.ts +1 -1
- package/dist/config/reserved-names.d.ts.map +1 -1
- package/dist/config/reserved-names.js +10 -0
- package/dist/config/reserved-names.js.map +1 -1
- package/dist/config/schemas/auth.d.ts +99 -0
- package/dist/config/schemas/auth.d.ts.map +1 -0
- package/dist/config/schemas/auth.js +25 -0
- package/dist/config/schemas/auth.js.map +1 -0
- package/dist/config/schemas/browser.d.ts +53 -0
- package/dist/config/schemas/browser.d.ts.map +1 -0
- package/dist/config/schemas/browser.js +27 -0
- package/dist/config/schemas/browser.js.map +1 -0
- package/dist/config/schemas/channels.d.ts +27 -0
- package/dist/config/schemas/channels.d.ts.map +1 -0
- package/dist/config/schemas/channels.js +19 -0
- package/dist/config/schemas/channels.js.map +1 -0
- package/dist/config/schemas/cliproxy.d.ts +142 -0
- package/dist/config/schemas/cliproxy.d.ts.map +1 -0
- package/dist/config/schemas/cliproxy.js +18 -0
- package/dist/config/schemas/cliproxy.js.map +1 -0
- package/dist/config/schemas/copilot-cursor.d.ts +75 -0
- package/dist/config/schemas/copilot-cursor.d.ts.map +1 -0
- package/dist/config/schemas/copilot-cursor.js +36 -0
- package/dist/config/schemas/copilot-cursor.js.map +1 -0
- package/dist/config/schemas/index.d.ts +28 -0
- package/dist/config/schemas/index.d.ts.map +1 -0
- package/dist/config/schemas/index.js +51 -0
- package/dist/config/schemas/index.js.map +1 -0
- package/dist/config/schemas/logging.d.ts +43 -0
- package/dist/config/schemas/logging.d.ts.map +1 -0
- package/dist/config/schemas/logging.js +23 -0
- package/dist/config/schemas/logging.js.map +1 -0
- package/dist/config/schemas/providers.d.ts +14 -0
- package/dist/config/schemas/providers.d.ts.map +1 -0
- package/dist/config/schemas/providers.js +21 -0
- package/dist/config/schemas/providers.js.map +1 -0
- package/dist/config/schemas/proxy-server.d.ts +141 -0
- package/dist/config/schemas/proxy-server.d.ts.map +1 -0
- package/dist/config/schemas/proxy-server.js +71 -0
- package/dist/config/schemas/proxy-server.js.map +1 -0
- package/dist/config/schemas/quota.d.ts +88 -0
- package/dist/config/schemas/quota.d.ts.map +1 -0
- package/dist/config/schemas/quota.js +47 -0
- package/dist/config/schemas/quota.js.map +1 -0
- package/dist/config/schemas/thinking.d.ts +50 -0
- package/dist/config/schemas/thinking.d.ts.map +1 -0
- package/dist/config/schemas/thinking.js +26 -0
- package/dist/config/schemas/thinking.js.map +1 -0
- package/dist/config/schemas/unified-config.d.ts +74 -0
- package/dist/config/schemas/unified-config.d.ts.map +1 -0
- package/dist/config/schemas/unified-config.js +131 -0
- package/dist/config/schemas/unified-config.js.map +1 -0
- package/dist/config/schemas/version.d.ts +23 -0
- package/dist/config/schemas/version.d.ts.map +1 -0
- package/dist/config/schemas/version.js +26 -0
- package/dist/config/schemas/version.js.map +1 -0
- package/dist/config/schemas/websearch.d.ts +138 -0
- package/dist/config/schemas/websearch.d.ts.map +1 -0
- package/dist/config/schemas/websearch.js +12 -0
- package/dist/config/schemas/websearch.js.map +1 -0
- package/dist/config/unified-config-loader.d.ts +21 -113
- package/dist/config/unified-config-loader.d.ts.map +1 -1
- package/dist/config/unified-config-loader.js +104 -935
- package/dist/config/unified-config-loader.js.map +1 -1
- package/dist/config/unified-config-types.d.ts +3 -723
- package/dist/config/unified-config-types.d.ts.map +1 -1
- package/dist/config/unified-config-types.js +19 -268
- package/dist/config/unified-config-types.js.map +1 -1
- package/dist/copilot/copilot-auth.d.ts.map +1 -1
- package/dist/copilot/copilot-auth.js +22 -0
- package/dist/copilot/copilot-auth.js.map +1 -1
- package/dist/copilot/copilot-daemon.d.ts.map +1 -1
- package/dist/copilot/copilot-daemon.js +28 -2
- package/dist/copilot/copilot-daemon.js.map +1 -1
- package/dist/copilot/copilot-executor.d.ts +1 -1
- package/dist/copilot/copilot-executor.d.ts.map +1 -1
- package/dist/copilot/copilot-executor.js +31 -12
- package/dist/copilot/copilot-executor.js.map +1 -1
- package/dist/copilot/copilot-package-manager.js +2 -2
- package/dist/copilot/copilot-package-manager.js.map +1 -1
- package/dist/cursor/constants.d.ts +4 -1
- package/dist/cursor/constants.d.ts.map +1 -1
- package/dist/cursor/constants.js +27 -1
- package/dist/cursor/constants.js.map +1 -1
- package/dist/cursor/cursor-anthropic-response.d.ts +1 -5
- package/dist/cursor/cursor-anthropic-response.d.ts.map +1 -1
- package/dist/cursor/cursor-anthropic-response.js +3 -186
- package/dist/cursor/cursor-anthropic-response.js.map +1 -1
- package/dist/cursor/cursor-anthropic-translator.d.ts.map +1 -1
- package/dist/cursor/cursor-anthropic-translator.js +17 -3
- package/dist/cursor/cursor-anthropic-translator.js.map +1 -1
- package/dist/cursor/cursor-anthropic-types.d.ts +3 -0
- package/dist/cursor/cursor-anthropic-types.d.ts.map +1 -1
- package/dist/cursor/cursor-auth.d.ts +1 -0
- package/dist/cursor/cursor-auth.d.ts.map +1 -1
- package/dist/cursor/cursor-auth.js +156 -34
- package/dist/cursor/cursor-auth.js.map +1 -1
- package/dist/cursor/cursor-daemon-entry.js +2 -2
- package/dist/cursor/cursor-daemon-entry.js.map +1 -1
- package/dist/cursor/cursor-daemon-pid.js +2 -2
- package/dist/cursor/cursor-daemon-pid.js.map +1 -1
- package/dist/cursor/cursor-daemon.d.ts.map +1 -1
- package/dist/cursor/cursor-daemon.js +28 -1
- package/dist/cursor/cursor-daemon.js.map +1 -1
- package/dist/cursor/cursor-default-models.d.ts +1 -1
- package/dist/cursor/cursor-default-models.d.ts.map +1 -1
- package/dist/cursor/cursor-default-models.js +11 -1
- package/dist/cursor/cursor-default-models.js.map +1 -1
- package/dist/cursor/cursor-executor.d.ts +2 -1
- package/dist/cursor/cursor-executor.d.ts.map +1 -1
- package/dist/cursor/cursor-executor.js +312 -161
- package/dist/cursor/cursor-executor.js.map +1 -1
- package/dist/cursor/cursor-models.d.ts.map +1 -1
- package/dist/cursor/cursor-models.js +26 -4
- package/dist/cursor/cursor-models.js.map +1 -1
- package/dist/cursor/cursor-profile-executor.d.ts +10 -1
- package/dist/cursor/cursor-profile-executor.d.ts.map +1 -1
- package/dist/cursor/cursor-profile-executor.js +14 -10
- package/dist/cursor/cursor-profile-executor.js.map +1 -1
- package/dist/cursor/cursor-protobuf-decoder.d.ts.map +1 -1
- package/dist/cursor/cursor-protobuf-decoder.js +1 -3
- package/dist/cursor/cursor-protobuf-decoder.js.map +1 -1
- package/dist/cursor/cursor-protobuf-schema.d.ts +12 -3
- package/dist/cursor/cursor-protobuf-schema.d.ts.map +1 -1
- package/dist/cursor/cursor-protobuf-schema.js +23 -5
- package/dist/cursor/cursor-protobuf-schema.js.map +1 -1
- package/dist/cursor/cursor-protobuf.d.ts +1 -1
- package/dist/cursor/cursor-protobuf.d.ts.map +1 -1
- package/dist/cursor/cursor-protobuf.js +2 -4
- package/dist/cursor/cursor-protobuf.js.map +1 -1
- package/dist/cursor/cursor-runtime-probe.d.ts +12 -0
- package/dist/cursor/cursor-runtime-probe.d.ts.map +1 -0
- package/dist/cursor/cursor-runtime-probe.js +220 -0
- package/dist/cursor/cursor-runtime-probe.js.map +1 -0
- package/dist/cursor/cursor-stream-parser.d.ts +10 -0
- package/dist/cursor/cursor-stream-parser.d.ts.map +1 -1
- package/dist/cursor/cursor-stream-parser.js +106 -10
- package/dist/cursor/cursor-stream-parser.js.map +1 -1
- package/dist/cursor/index.d.ts +1 -0
- package/dist/cursor/index.d.ts.map +1 -1
- package/dist/cursor/index.js +3 -1
- package/dist/cursor/index.js.map +1 -1
- package/dist/cursor/types.d.ts +6 -0
- package/dist/cursor/types.d.ts.map +1 -1
- package/dist/delegation/delegation-handler.d.ts.map +1 -1
- package/dist/delegation/delegation-handler.js +113 -36
- package/dist/delegation/delegation-handler.js.map +1 -1
- package/dist/delegation/headless-executor.d.ts.map +1 -1
- package/dist/delegation/headless-executor.js +67 -22
- package/dist/delegation/headless-executor.js.map +1 -1
- package/dist/delegation/session-manager.js +2 -2
- package/dist/delegation/session-manager.js.map +1 -1
- package/dist/dispatcher/cli-argument-parser.d.ts +70 -0
- package/dist/dispatcher/cli-argument-parser.d.ts.map +1 -0
- package/dist/dispatcher/cli-argument-parser.js +285 -0
- package/dist/dispatcher/cli-argument-parser.js.map +1 -0
- package/dist/dispatcher/dispatcher-context.d.ts +24 -0
- package/dist/dispatcher/dispatcher-context.d.ts.map +1 -0
- package/dist/dispatcher/dispatcher-context.js +11 -0
- package/dist/dispatcher/dispatcher-context.js.map +1 -0
- package/dist/dispatcher/environment-builder.d.ts +20 -0
- package/dist/dispatcher/environment-builder.d.ts.map +1 -0
- package/dist/dispatcher/environment-builder.js +95 -0
- package/dist/dispatcher/environment-builder.js.map +1 -0
- package/dist/dispatcher/flows/account-flow.d.ts +9 -0
- package/dist/dispatcher/flows/account-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/account-flow.js +50 -0
- package/dist/dispatcher/flows/account-flow.js.map +1 -0
- package/dist/dispatcher/flows/cliproxy-flow.d.ts +8 -0
- package/dist/dispatcher/flows/cliproxy-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/cliproxy-flow.js +165 -0
- package/dist/dispatcher/flows/cliproxy-flow.js.map +1 -0
- package/dist/dispatcher/flows/copilot-flow.d.ts +8 -0
- package/dist/dispatcher/flows/copilot-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/copilot-flow.js +72 -0
- package/dist/dispatcher/flows/copilot-flow.js.map +1 -0
- package/dist/dispatcher/flows/cursor-flow.d.ts +8 -0
- package/dist/dispatcher/flows/cursor-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/cursor-flow.js +62 -0
- package/dist/dispatcher/flows/cursor-flow.js.map +1 -0
- package/dist/dispatcher/flows/default-flow.d.ts +10 -0
- package/dist/dispatcher/flows/default-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/default-flow.js +99 -0
- package/dist/dispatcher/flows/default-flow.js.map +1 -0
- package/dist/dispatcher/flows/settings-flow.d.ts +9 -0
- package/dist/dispatcher/flows/settings-flow.d.ts.map +1 -0
- package/dist/dispatcher/flows/settings-flow.js +329 -0
- package/dist/dispatcher/flows/settings-flow.js.map +1 -0
- package/dist/dispatcher/flows/settings-image-analysis-prep.d.ts +28 -0
- package/dist/dispatcher/flows/settings-image-analysis-prep.d.ts.map +1 -0
- package/dist/dispatcher/flows/settings-image-analysis-prep.js +81 -0
- package/dist/dispatcher/flows/settings-image-analysis-prep.js.map +1 -0
- package/dist/dispatcher/pre-dispatch.d.ts +23 -0
- package/dist/dispatcher/pre-dispatch.d.ts.map +1 -0
- package/dist/dispatcher/pre-dispatch.js +156 -0
- package/dist/dispatcher/pre-dispatch.js.map +1 -0
- package/dist/dispatcher/profile-resolver.d.ts +65 -0
- package/dist/dispatcher/profile-resolver.d.ts.map +1 -0
- package/dist/dispatcher/profile-resolver.js +303 -0
- package/dist/dispatcher/profile-resolver.js.map +1 -0
- package/dist/dispatcher/target-executor.d.ts +26 -0
- package/dist/dispatcher/target-executor.d.ts.map +1 -0
- package/dist/dispatcher/target-executor.js +81 -0
- package/dist/dispatcher/target-executor.js.map +1 -0
- package/dist/docker/docker-assets.d.ts.map +1 -1
- package/dist/docker/docker-assets.js +2 -2
- package/dist/docker/docker-assets.js.map +1 -1
- package/dist/docker/docker-bootstrap.js +1 -1
- package/dist/docker/docker-bootstrap.js.map +1 -1
- package/dist/docker/docker-executor.d.ts +1 -0
- package/dist/docker/docker-executor.d.ts.map +1 -1
- package/dist/docker/supervisord-lifecycle.d.ts +17 -0
- package/dist/docker/supervisord-lifecycle.d.ts.map +1 -0
- package/dist/docker/supervisord-lifecycle.js +58 -0
- package/dist/docker/supervisord-lifecycle.js.map +1 -0
- package/dist/errors/error-handler.d.ts.map +1 -1
- package/dist/errors/error-handler.js +13 -0
- package/dist/errors/error-handler.js.map +1 -1
- package/dist/errors/error-types.d.ts +9 -0
- package/dist/errors/error-types.d.ts.map +1 -1
- package/dist/errors/error-types.js +15 -1
- package/dist/errors/error-types.js.map +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +3 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/glmt/delta-accumulator.d.ts +4 -0
- package/dist/glmt/delta-accumulator.d.ts.map +1 -1
- package/dist/glmt/delta-accumulator.js +17 -5
- package/dist/glmt/delta-accumulator.js.map +1 -1
- package/dist/glmt/glmt-proxy.d.ts.map +1 -1
- package/dist/glmt/glmt-proxy.js +7 -0
- package/dist/glmt/glmt-proxy.js.map +1 -1
- package/dist/glmt/glmt-transformer.d.ts +1 -0
- package/dist/glmt/glmt-transformer.d.ts.map +1 -1
- package/dist/glmt/glmt-transformer.js +9 -2
- package/dist/glmt/glmt-transformer.js.map +1 -1
- package/dist/glmt/pipeline/stream-parser.d.ts +0 -3
- package/dist/glmt/pipeline/stream-parser.d.ts.map +1 -1
- package/dist/glmt/pipeline/stream-parser.js +20 -27
- package/dist/glmt/pipeline/stream-parser.js.map +1 -1
- package/dist/glmt/pipeline/tool-call-handler.d.ts +0 -7
- package/dist/glmt/pipeline/tool-call-handler.d.ts.map +1 -1
- package/dist/glmt/pipeline/tool-call-handler.js +15 -24
- package/dist/glmt/pipeline/tool-call-handler.js.map +1 -1
- package/dist/glmt/sse-parser.d.ts.map +1 -1
- package/dist/glmt/sse-parser.js +46 -41
- package/dist/glmt/sse-parser.js.map +1 -1
- package/dist/management/checks/config-check.d.ts.map +1 -1
- package/dist/management/checks/config-check.js +2 -2
- package/dist/management/checks/config-check.js.map +1 -1
- package/dist/management/checks/env-check.d.ts.map +1 -1
- package/dist/management/checks/env-check.js +2 -1
- package/dist/management/checks/env-check.js.map +1 -1
- package/dist/management/checks/image-analysis-check.d.ts.map +1 -1
- package/dist/management/checks/image-analysis-check.js +25 -7
- package/dist/management/checks/image-analysis-check.js.map +1 -1
- package/dist/management/checks/profile-check.d.ts.map +1 -1
- package/dist/management/checks/profile-check.js +6 -7
- package/dist/management/checks/profile-check.js.map +1 -1
- package/dist/management/checks/symlink-check.d.ts.map +1 -1
- package/dist/management/checks/symlink-check.js +4 -5
- package/dist/management/checks/symlink-check.js.map +1 -1
- package/dist/management/checks/system-check.d.ts.map +1 -1
- package/dist/management/checks/system-check.js +3 -3
- package/dist/management/checks/system-check.js.map +1 -1
- package/dist/management/instance-directory.d.ts +4 -0
- package/dist/management/instance-directory.d.ts.map +1 -0
- package/dist/management/instance-directory.js +54 -0
- package/dist/management/instance-directory.js.map +1 -0
- package/dist/management/instance-manager.d.ts.map +1 -1
- package/dist/management/instance-manager.js +18 -13
- package/dist/management/instance-manager.js.map +1 -1
- package/dist/management/plugin-path-normalizer.d.ts +7 -0
- package/dist/management/plugin-path-normalizer.d.ts.map +1 -0
- package/dist/management/plugin-path-normalizer.js +82 -0
- package/dist/management/plugin-path-normalizer.js.map +1 -0
- package/dist/management/recovery-manager.d.ts +6 -0
- package/dist/management/recovery-manager.d.ts.map +1 -1
- package/dist/management/recovery-manager.js +77 -7
- package/dist/management/recovery-manager.js.map +1 -1
- package/dist/management/repair/auto-repair.d.ts.map +1 -1
- package/dist/management/repair/auto-repair.js +2 -2
- package/dist/management/repair/auto-repair.js.map +1 -1
- package/dist/management/shared-manager.d.ts +3 -2
- package/dist/management/shared-manager.d.ts.map +1 -1
- package/dist/management/shared-manager.js +41 -84
- package/dist/management/shared-manager.js.map +1 -1
- package/dist/proxy/index.d.ts +9 -0
- package/dist/proxy/index.d.ts.map +1 -0
- package/dist/proxy/index.js +25 -0
- package/dist/proxy/index.js.map +1 -0
- package/dist/proxy/profile-router.d.ts +28 -0
- package/dist/proxy/profile-router.d.ts.map +1 -0
- package/dist/proxy/profile-router.js +43 -0
- package/dist/proxy/profile-router.js.map +1 -0
- package/dist/proxy/proxy-daemon-entry.d.ts +2 -0
- package/dist/proxy/proxy-daemon-entry.d.ts.map +1 -0
- package/dist/proxy/proxy-daemon-entry.js +112 -0
- package/dist/proxy/proxy-daemon-entry.js.map +1 -0
- package/dist/proxy/proxy-daemon-paths.d.ts +12 -0
- package/dist/proxy/proxy-daemon-paths.d.ts.map +1 -0
- package/dist/proxy/proxy-daemon-paths.js +58 -0
- package/dist/proxy/proxy-daemon-paths.js.map +1 -0
- package/dist/proxy/proxy-daemon-state.d.ts +25 -0
- package/dist/proxy/proxy-daemon-state.d.ts.map +1 -0
- package/dist/proxy/proxy-daemon-state.js +199 -0
- package/dist/proxy/proxy-daemon-state.js.map +1 -0
- package/dist/proxy/proxy-daemon.d.ts +27 -0
- package/dist/proxy/proxy-daemon.d.ts.map +1 -0
- package/dist/proxy/proxy-daemon.js +614 -0
- package/dist/proxy/proxy-daemon.js.map +1 -0
- package/dist/proxy/proxy-env.d.ts +3 -0
- package/dist/proxy/proxy-env.d.ts.map +1 -0
- package/dist/proxy/proxy-env.js +26 -0
- package/dist/proxy/proxy-env.js.map +1 -0
- package/dist/proxy/proxy-port-resolver.d.ts +9 -0
- package/dist/proxy/proxy-port-resolver.d.ts.map +1 -0
- package/dist/proxy/proxy-port-resolver.js +62 -0
- package/dist/proxy/proxy-port-resolver.js.map +1 -0
- package/dist/proxy/request-router.d.ts +12 -0
- package/dist/proxy/request-router.d.ts.map +1 -0
- package/dist/proxy/request-router.js +163 -0
- package/dist/proxy/request-router.js.map +1 -0
- package/dist/proxy/routing-config.d.ts +10 -0
- package/dist/proxy/routing-config.d.ts.map +1 -0
- package/dist/proxy/routing-config.js +79 -0
- package/dist/proxy/routing-config.js.map +1 -0
- package/dist/proxy/server/http-helpers.d.ts +8 -0
- package/dist/proxy/server/http-helpers.d.ts.map +1 -0
- package/dist/proxy/server/http-helpers.js +73 -0
- package/dist/proxy/server/http-helpers.js.map +1 -0
- package/dist/proxy/server/messages-route.d.ts +12 -0
- package/dist/proxy/server/messages-route.d.ts.map +1 -0
- package/dist/proxy/server/messages-route.js +244 -0
- package/dist/proxy/server/messages-route.js.map +1 -0
- package/dist/proxy/server/proxy-server.d.ts +12 -0
- package/dist/proxy/server/proxy-server.d.ts.map +1 -0
- package/dist/proxy/server/proxy-server.js +140 -0
- package/dist/proxy/server/proxy-server.js.map +1 -0
- package/dist/proxy/transformers/request-transformer.d.ts +60 -0
- package/dist/proxy/transformers/request-transformer.d.ts.map +1 -0
- package/dist/proxy/transformers/request-transformer.js +452 -0
- package/dist/proxy/transformers/request-transformer.js.map +1 -0
- package/dist/proxy/transformers/sse-stream-transformer.d.ts +11 -0
- package/dist/proxy/transformers/sse-stream-transformer.d.ts.map +1 -0
- package/dist/proxy/transformers/sse-stream-transformer.js +200 -0
- package/dist/proxy/transformers/sse-stream-transformer.js.map +1 -0
- package/dist/proxy/upstream-url.d.ts +3 -0
- package/dist/proxy/upstream-url.d.ts.map +1 -0
- package/dist/proxy/upstream-url.js +43 -0
- package/dist/proxy/upstream-url.js.map +1 -0
- package/dist/services/logging/index.d.ts +12 -0
- package/dist/services/logging/index.d.ts.map +1 -0
- package/dist/services/logging/index.js +37 -0
- package/dist/services/logging/index.js.map +1 -0
- package/dist/services/logging/log-buffer.d.ts +5 -0
- package/dist/services/logging/log-buffer.d.ts.map +1 -0
- package/dist/services/logging/log-buffer.js +20 -0
- package/dist/services/logging/log-buffer.js.map +1 -0
- package/dist/services/logging/log-config.d.ts +4 -0
- package/dist/services/logging/log-config.d.ts.map +1 -0
- package/dist/services/logging/log-config.js +68 -0
- package/dist/services/logging/log-config.js.map +1 -0
- package/dist/services/logging/log-context.d.ts +41 -0
- package/dist/services/logging/log-context.d.ts.map +1 -0
- package/dist/services/logging/log-context.js +51 -0
- package/dist/services/logging/log-context.js.map +1 -0
- package/dist/services/logging/log-paths.d.ts +8 -0
- package/dist/services/logging/log-paths.d.ts.map +1 -0
- package/dist/services/logging/log-paths.js +66 -0
- package/dist/services/logging/log-paths.js.map +1 -0
- package/dist/services/logging/log-reader.d.ts +5 -0
- package/dist/services/logging/log-reader.d.ts.map +1 -0
- package/dist/services/logging/log-reader.js +124 -0
- package/dist/services/logging/log-reader.js.map +1 -0
- package/dist/services/logging/log-redaction.d.ts +10 -0
- package/dist/services/logging/log-redaction.d.ts.map +1 -0
- package/dist/services/logging/log-redaction.js +90 -0
- package/dist/services/logging/log-redaction.js.map +1 -0
- package/dist/services/logging/log-storage.d.ts +4 -0
- package/dist/services/logging/log-storage.d.ts.map +1 -0
- package/dist/services/logging/log-storage.js +109 -0
- package/dist/services/logging/log-storage.js.map +1 -0
- package/dist/services/logging/log-types.d.ts +60 -0
- package/dist/services/logging/log-types.d.ts.map +1 -0
- package/dist/services/logging/log-types.js +33 -0
- package/dist/services/logging/log-types.js.map +1 -0
- package/dist/services/logging/logger.d.ts +26 -0
- package/dist/services/logging/logger.d.ts.map +1 -0
- package/dist/services/logging/logger.js +65 -0
- package/dist/services/logging/logger.js.map +1 -0
- package/dist/shared/agy-gemini-pro-compatibility.d.ts +15 -0
- package/dist/shared/agy-gemini-pro-compatibility.d.ts.map +1 -0
- package/dist/shared/agy-gemini-pro-compatibility.js +18 -0
- package/dist/shared/agy-gemini-pro-compatibility.js.map +1 -0
- package/dist/shared/claude-extension-setup.d.ts.map +1 -1
- package/dist/shared/claude-extension-setup.js +7 -3
- package/dist/shared/claude-extension-setup.js.map +1 -1
- package/dist/shared/cliproxy-model-routing.d.ts +45 -0
- package/dist/shared/cliproxy-model-routing.d.ts.map +1 -0
- package/dist/shared/cliproxy-model-routing.js +144 -0
- package/dist/shared/cliproxy-model-routing.js.map +1 -0
- package/dist/shared/provider-preset-catalog.d.ts +4 -2
- package/dist/shared/provider-preset-catalog.d.ts.map +1 -1
- package/dist/shared/provider-preset-catalog.js +17 -1
- package/dist/shared/provider-preset-catalog.js.map +1 -1
- package/dist/shared/toml-object.d.ts.map +1 -1
- package/dist/shared/toml-object.js +6 -2
- package/dist/shared/toml-object.js.map +1 -1
- package/dist/targets/claude-adapter.d.ts +6 -1
- package/dist/targets/claude-adapter.d.ts.map +1 -1
- package/dist/targets/claude-adapter.js +20 -5
- package/dist/targets/claude-adapter.js.map +1 -1
- package/dist/targets/codex-adapter.d.ts +2 -0
- package/dist/targets/codex-adapter.d.ts.map +1 -1
- package/dist/targets/codex-adapter.js +43 -11
- package/dist/targets/codex-adapter.js.map +1 -1
- package/dist/targets/codex-cliproxy-provider-config.d.ts +16 -0
- package/dist/targets/codex-cliproxy-provider-config.d.ts.map +1 -0
- package/dist/targets/codex-cliproxy-provider-config.js +156 -0
- package/dist/targets/codex-cliproxy-provider-config.js.map +1 -0
- package/dist/targets/codex-detector.d.ts.map +1 -1
- package/dist/targets/codex-detector.js +20 -9
- package/dist/targets/codex-detector.js.map +1 -1
- package/dist/targets/droid-adapter.d.ts +3 -2
- package/dist/targets/droid-adapter.d.ts.map +1 -1
- package/dist/targets/droid-adapter.js +15 -10
- package/dist/targets/droid-adapter.js.map +1 -1
- package/dist/targets/droid-config-manager.d.ts.map +1 -1
- package/dist/targets/droid-config-manager.js +40 -0
- package/dist/targets/droid-config-manager.js.map +1 -1
- package/dist/targets/droid-provider.d.ts.map +1 -1
- package/dist/targets/droid-provider.js +10 -5
- package/dist/targets/droid-provider.js.map +1 -1
- package/dist/targets/target-adapter.d.ts +5 -0
- package/dist/targets/target-adapter.d.ts.map +1 -1
- package/dist/targets/target-metadata.js +1 -1
- package/dist/targets/target-metadata.js.map +1 -1
- package/dist/targets/target-resolver.d.ts.map +1 -1
- package/dist/targets/target-resolver.js +15 -0
- package/dist/targets/target-resolver.js.map +1 -1
- package/dist/targets/target-runtime-compatibility.js +1 -1
- package/dist/targets/target-runtime-compatibility.js.map +1 -1
- package/dist/types/cli.d.ts +1 -0
- package/dist/types/cli.d.ts.map +1 -1
- package/dist/types/config.d.ts +15 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/ui/assets/accounts-biinrjBy.js +1 -0
- package/dist/ui/assets/alert-dialog-B9kuXS_B.js +1 -0
- package/dist/ui/assets/api-BYTesAyV.js +4 -0
- package/dist/ui/assets/auth-section-BH7Y0zzE.js +1 -0
- package/dist/ui/assets/backups-section-JTiku4fB.js +1 -0
- package/dist/ui/assets/channels-BweRUtu-.js +1 -0
- package/dist/ui/assets/charts-eIPy2oG6.js +64 -0
- package/dist/ui/assets/checkbox-CsTXDim7.js +1 -0
- package/dist/ui/assets/claude-extension-BE4B2NkS.js +1 -0
- package/dist/ui/assets/cliproxy-Fl6HWxZ0.js +4 -0
- package/dist/ui/assets/cliproxy-ai-providers-NMOopK4K.js +15 -0
- package/dist/ui/assets/cliproxy-control-panel-BgiBcyzb.js +1 -0
- package/dist/ui/assets/code-highlight-ClSMkeL5.js +1 -0
- package/dist/ui/assets/codex-BsxF_eKF.js +30 -0
- package/dist/ui/assets/confirm-dialog-iyu6jSnb.js +1 -0
- package/dist/ui/assets/copilot-BSCdzbOk.js +3 -0
- package/dist/ui/assets/cursor-CjGT-EsR.js +1 -0
- package/dist/ui/assets/droid-MR-k0fbU.js +2 -0
- package/dist/ui/assets/form-utils-CuHzLhJZ.js +20 -0
- package/dist/ui/assets/globalenv-section-BGPR-lJN.js +1 -0
- package/dist/ui/assets/health-C7wQUXVn.js +1 -0
- package/dist/ui/assets/icons-bxdfpJdB.js +1 -0
- package/dist/ui/assets/index-7dfuc3Cf.js +56 -0
- package/dist/ui/assets/index-7rknm4m0.js +1 -0
- package/dist/ui/assets/index-BeLNgVQ9.js +1 -0
- package/dist/ui/assets/index-BvMWFZiH.js +1 -0
- package/dist/ui/assets/index-DrEPnpI3.css +1 -0
- package/dist/ui/assets/index-MAUysHQF.js +1 -0
- package/dist/ui/assets/index-nzImYtUK.js +1 -0
- package/dist/ui/assets/index-w9DZ42zc.js +1 -0
- package/dist/ui/assets/logs-Qr4G0AdK.js +1 -0
- package/dist/ui/assets/masked-input-Bl5OoUEZ.js +1 -0
- package/dist/ui/assets/notifications-B4_o8bcr.js +1 -0
- package/dist/ui/assets/providers/codebuddy.png +0 -0
- package/dist/ui/assets/providers/cursor.svg +5 -0
- package/dist/ui/assets/providers/gitlab.svg +22 -0
- package/dist/ui/assets/providers/kilo.png +0 -0
- package/dist/ui/assets/proxy-Br5aAkn0.js +9 -0
- package/dist/ui/assets/proxy-status-widget-703_vH2t.js +1 -0
- package/dist/ui/assets/radix-ui-DvRtHWGI.js +51 -0
- package/dist/ui/assets/raw-json-settings-editor-panel-DWTJY3og.js +1 -0
- package/dist/ui/assets/react-vendor-Bjx91N7w.js +3 -0
- package/dist/ui/assets/searchable-select-C8BA2Q6i.js +1 -0
- package/dist/ui/assets/separator-avUMnKG4.js +1 -0
- package/dist/ui/assets/shared-DsOKYLqq.js +8 -0
- package/dist/ui/assets/table-C6r_OOul.js +1 -0
- package/dist/ui/assets/tanstack-Dg84L5cM.js +4 -0
- package/dist/ui/assets/updates-K6jy3VXq.js +1 -0
- package/dist/ui/assets/use-accounts-ZouK2A2J.js +1 -0
- package/dist/ui/index.html +9 -9
- package/dist/utils/browser/browser-policy.d.ts +22 -0
- package/dist/utils/browser/browser-policy.d.ts.map +1 -0
- package/dist/utils/browser/browser-policy.js +65 -0
- package/dist/utils/browser/browser-policy.js.map +1 -0
- package/dist/utils/browser/browser-settings.d.ts +52 -0
- package/dist/utils/browser/browser-settings.d.ts.map +1 -0
- package/dist/utils/browser/browser-settings.js +257 -0
- package/dist/utils/browser/browser-settings.js.map +1 -0
- package/dist/utils/browser/browser-setup.d.ts +21 -0
- package/dist/utils/browser/browser-setup.d.ts.map +1 -0
- package/dist/utils/browser/browser-setup.js +68 -0
- package/dist/utils/browser/browser-setup.js.map +1 -0
- package/dist/utils/browser/browser-status.d.ts +42 -0
- package/dist/utils/browser/browser-status.d.ts.map +1 -0
- package/dist/utils/browser/browser-status.js +251 -0
- package/dist/utils/browser/browser-status.js.map +1 -0
- package/dist/utils/browser/chrome-reuse.d.ts +18 -0
- package/dist/utils/browser/chrome-reuse.d.ts.map +1 -0
- package/dist/utils/browser/chrome-reuse.js +194 -0
- package/dist/utils/browser/chrome-reuse.js.map +1 -0
- package/dist/utils/browser/claude-tool-args.d.ts +2 -0
- package/dist/utils/browser/claude-tool-args.d.ts.map +1 -0
- package/dist/utils/browser/claude-tool-args.js +22 -0
- package/dist/utils/browser/claude-tool-args.js.map +1 -0
- package/dist/utils/browser/index.d.ts +16 -0
- package/dist/utils/browser/index.d.ts.map +1 -0
- package/dist/utils/browser/index.js +45 -0
- package/dist/utils/browser/index.js.map +1 -0
- package/dist/utils/browser/mcp-installer.d.ts +14 -0
- package/dist/utils/browser/mcp-installer.d.ts.map +1 -0
- package/dist/utils/browser/mcp-installer.js +356 -0
- package/dist/utils/browser/mcp-installer.js.map +1 -0
- package/dist/utils/browser/platform.d.ts +4 -0
- package/dist/utils/browser/platform.d.ts.map +1 -0
- package/dist/utils/browser/platform.js +12 -0
- package/dist/utils/browser/platform.js.map +1 -0
- package/dist/utils/browser-codex-overrides.d.ts +3 -0
- package/dist/utils/browser-codex-overrides.d.ts.map +1 -0
- package/dist/utils/browser-codex-overrides.js +29 -0
- package/dist/utils/browser-codex-overrides.js.map +1 -0
- package/dist/utils/claude-detector.d.ts +1 -0
- package/dist/utils/claude-detector.d.ts.map +1 -1
- package/dist/utils/claude-detector.js +2 -1
- package/dist/utils/claude-detector.js.map +1 -1
- package/dist/utils/claude-spawner.d.ts +1 -0
- package/dist/utils/claude-spawner.d.ts.map +1 -1
- package/dist/utils/claude-spawner.js +1 -1
- package/dist/utils/claude-spawner.js.map +1 -1
- package/dist/utils/claude-subcommand-detector.d.ts +45 -0
- package/dist/utils/claude-subcommand-detector.d.ts.map +1 -0
- package/dist/utils/claude-subcommand-detector.js +179 -0
- package/dist/utils/claude-subcommand-detector.js.map +1 -0
- package/dist/utils/claude-tool-args.d.ts +7 -0
- package/dist/utils/claude-tool-args.d.ts.map +1 -0
- package/dist/utils/claude-tool-args.js +43 -0
- package/dist/utils/claude-tool-args.js.map +1 -0
- package/dist/utils/config-manager.d.ts +5 -0
- package/dist/utils/config-manager.d.ts.map +1 -1
- package/dist/utils/config-manager.js +16 -3
- package/dist/utils/config-manager.js.map +1 -1
- package/dist/utils/hooks/get-image-analysis-hook-env.d.ts +1 -1
- package/dist/utils/hooks/get-image-analysis-hook-env.d.ts.map +1 -1
- package/dist/utils/hooks/get-image-analysis-hook-env.js +11 -7
- package/dist/utils/hooks/get-image-analysis-hook-env.js.map +1 -1
- package/dist/utils/hooks/image-analysis-backend-resolver.js +2 -2
- package/dist/utils/hooks/image-analysis-backend-resolver.js.map +1 -1
- package/dist/utils/hooks/image-analysis-runtime-status.d.ts +4 -4
- package/dist/utils/hooks/image-analysis-runtime-status.d.ts.map +1 -1
- package/dist/utils/hooks/image-analysis-runtime-status.js +15 -11
- package/dist/utils/hooks/image-analysis-runtime-status.js.map +1 -1
- package/dist/utils/hooks/image-analyzer-hook-configuration.d.ts.map +1 -1
- package/dist/utils/hooks/image-analyzer-hook-configuration.js +2 -2
- package/dist/utils/hooks/image-analyzer-hook-configuration.js.map +1 -1
- package/dist/utils/hooks/image-analyzer-hook-installer.d.ts.map +1 -1
- package/dist/utils/hooks/image-analyzer-hook-installer.js +2 -2
- package/dist/utils/hooks/image-analyzer-hook-installer.js.map +1 -1
- package/dist/utils/hooks/image-analyzer-hook-utils.d.ts +21 -0
- package/dist/utils/hooks/image-analyzer-hook-utils.d.ts.map +1 -0
- package/dist/utils/hooks/image-analyzer-hook-utils.js +81 -0
- package/dist/utils/hooks/image-analyzer-hook-utils.js.map +1 -0
- package/dist/utils/hooks/image-analyzer-profile-hook-injector.d.ts +1 -0
- package/dist/utils/hooks/image-analyzer-profile-hook-injector.d.ts.map +1 -1
- package/dist/utils/hooks/image-analyzer-profile-hook-injector.js +35 -14
- package/dist/utils/hooks/image-analyzer-profile-hook-injector.js.map +1 -1
- package/dist/utils/hooks/index.d.ts +1 -0
- package/dist/utils/hooks/index.d.ts.map +1 -1
- package/dist/utils/hooks/index.js +3 -1
- package/dist/utils/hooks/index.js.map +1 -1
- package/dist/utils/image-analysis/claude-tool-args.d.ts +3 -0
- package/dist/utils/image-analysis/claude-tool-args.d.ts.map +1 -1
- package/dist/utils/image-analysis/claude-tool-args.js +25 -47
- package/dist/utils/image-analysis/claude-tool-args.js.map +1 -1
- package/dist/utils/image-analysis/index.d.ts +1 -0
- package/dist/utils/image-analysis/index.d.ts.map +1 -1
- package/dist/utils/image-analysis/index.js +6 -1
- package/dist/utils/image-analysis/index.js.map +1 -1
- package/dist/utils/image-analysis/mcp-installer.d.ts.map +1 -1
- package/dist/utils/image-analysis/mcp-installer.js +5 -5
- package/dist/utils/image-analysis/mcp-installer.js.map +1 -1
- package/dist/utils/image-analysis/repair.d.ts +12 -0
- package/dist/utils/image-analysis/repair.d.ts.map +1 -0
- package/dist/utils/image-analysis/repair.js +105 -0
- package/dist/utils/image-analysis/repair.js.map +1 -0
- package/dist/utils/openai-compat-launch-settings.d.ts +7 -0
- package/dist/utils/openai-compat-launch-settings.d.ts.map +1 -0
- package/dist/utils/openai-compat-launch-settings.js +61 -0
- package/dist/utils/openai-compat-launch-settings.js.map +1 -0
- package/dist/utils/package-manager-detector.d.ts +31 -4
- package/dist/utils/package-manager-detector.d.ts.map +1 -1
- package/dist/utils/package-manager-detector.js +249 -60
- package/dist/utils/package-manager-detector.js.map +1 -1
- package/dist/utils/prompt-injection-strategy.d.ts +54 -0
- package/dist/utils/prompt-injection-strategy.d.ts.map +1 -0
- package/dist/utils/prompt-injection-strategy.js +128 -0
- package/dist/utils/prompt-injection-strategy.js.map +1 -0
- package/dist/utils/retry-strategy.d.ts +37 -0
- package/dist/utils/retry-strategy.d.ts.map +1 -0
- package/dist/utils/retry-strategy.js +99 -0
- package/dist/utils/retry-strategy.js.map +1 -0
- package/dist/utils/shell-executor.d.ts +32 -1
- package/dist/utils/shell-executor.d.ts.map +1 -1
- package/dist/utils/shell-executor.js +193 -30
- package/dist/utils/shell-executor.js.map +1 -1
- package/dist/utils/update-checker.d.ts +1 -1
- package/dist/utils/update-checker.d.ts.map +1 -1
- package/dist/utils/websearch/claude-tool-args.d.ts +7 -0
- package/dist/utils/websearch/claude-tool-args.d.ts.map +1 -1
- package/dist/utils/websearch/claude-tool-args.js +32 -50
- package/dist/utils/websearch/claude-tool-args.js.map +1 -1
- package/dist/utils/websearch/hook-config.d.ts.map +1 -1
- package/dist/utils/websearch/hook-config.js +3 -3
- package/dist/utils/websearch/hook-config.js.map +1 -1
- package/dist/utils/websearch/hook-env.d.ts.map +1 -1
- package/dist/utils/websearch/hook-env.js +21 -3
- package/dist/utils/websearch/hook-env.js.map +1 -1
- package/dist/utils/websearch/hook-installer.d.ts.map +1 -1
- package/dist/utils/websearch/hook-installer.js +2 -2
- package/dist/utils/websearch/hook-installer.js.map +1 -1
- package/dist/utils/websearch/mcp-installer.d.ts.map +1 -1
- package/dist/utils/websearch/mcp-installer.js +5 -5
- package/dist/utils/websearch/mcp-installer.js.map +1 -1
- package/dist/utils/websearch/profile-hook-injector.d.ts.map +1 -1
- package/dist/utils/websearch/profile-hook-injector.js +3 -3
- package/dist/utils/websearch/profile-hook-injector.js.map +1 -1
- package/dist/utils/websearch/provider-secrets.js +2 -2
- package/dist/utils/websearch/provider-secrets.js.map +1 -1
- package/dist/utils/websearch/status.d.ts +1 -1
- package/dist/utils/websearch/status.d.ts.map +1 -1
- package/dist/utils/websearch/status.js +37 -16
- package/dist/utils/websearch/status.js.map +1 -1
- package/dist/utils/websearch/trace.d.ts +1 -0
- package/dist/utils/websearch/trace.d.ts.map +1 -1
- package/dist/utils/websearch/trace.js +27 -5
- package/dist/utils/websearch/trace.js.map +1 -1
- package/dist/utils/websearch/types.d.ts +12 -2
- package/dist/utils/websearch/types.d.ts.map +1 -1
- package/dist/utils/websearch/types.js +38 -0
- package/dist/utils/websearch/types.js.map +1 -1
- package/dist/web-server/file-watcher.js +2 -2
- package/dist/web-server/file-watcher.js.map +1 -1
- package/dist/web-server/health/cliproxy-checks.js +2 -2
- package/dist/web-server/health/cliproxy-checks.js.map +1 -1
- package/dist/web-server/health/config-checks.d.ts.map +1 -1
- package/dist/web-server/health/config-checks.js +3 -3
- package/dist/web-server/health/config-checks.js.map +1 -1
- package/dist/web-server/health/profile-checks.d.ts.map +1 -1
- package/dist/web-server/health/profile-checks.js +5 -6
- package/dist/web-server/health/profile-checks.js.map +1 -1
- package/dist/web-server/health/symlink-checks.d.ts.map +1 -1
- package/dist/web-server/health/symlink-checks.js +2 -3
- package/dist/web-server/health/symlink-checks.js.map +1 -1
- package/dist/web-server/health/websearch-checks.js +1 -1
- package/dist/web-server/health/websearch-checks.js.map +1 -1
- package/dist/web-server/health-service.d.ts.map +1 -1
- package/dist/web-server/health-service.js +7 -6
- package/dist/web-server/health-service.js.map +1 -1
- package/dist/web-server/index.d.ts.map +1 -1
- package/dist/web-server/index.js +102 -18
- package/dist/web-server/index.js.map +1 -1
- package/dist/web-server/jsonl-parser.d.ts.map +1 -1
- package/dist/web-server/jsonl-parser.js +22 -4
- package/dist/web-server/jsonl-parser.js.map +1 -1
- package/dist/web-server/middleware/auth-middleware.d.ts +7 -3
- package/dist/web-server/middleware/auth-middleware.d.ts.map +1 -1
- package/dist/web-server/middleware/auth-middleware.js +103 -8
- package/dist/web-server/middleware/auth-middleware.js.map +1 -1
- package/dist/web-server/middleware/request-logging-middleware.d.ts +3 -0
- package/dist/web-server/middleware/request-logging-middleware.d.ts.map +1 -0
- package/dist/web-server/middleware/request-logging-middleware.js +30 -0
- package/dist/web-server/middleware/request-logging-middleware.js.map +1 -0
- package/dist/web-server/model-pricing.d.ts +8 -6
- package/dist/web-server/model-pricing.d.ts.map +1 -1
- package/dist/web-server/model-pricing.js +184 -54
- package/dist/web-server/model-pricing.js.map +1 -1
- package/dist/web-server/models-dev/pricing-resolver.d.ts +18 -0
- package/dist/web-server/models-dev/pricing-resolver.d.ts.map +1 -0
- package/dist/web-server/models-dev/pricing-resolver.js +160 -0
- package/dist/web-server/models-dev/pricing-resolver.js.map +1 -0
- package/dist/web-server/models-dev/registry-cache.d.ts +19 -0
- package/dist/web-server/models-dev/registry-cache.d.ts.map +1 -0
- package/dist/web-server/models-dev/registry-cache.js +165 -0
- package/dist/web-server/models-dev/registry-cache.js.map +1 -0
- package/dist/web-server/models-dev/types.d.ts +39 -0
- package/dist/web-server/models-dev/types.d.ts.map +1 -0
- package/dist/web-server/models-dev/types.js +3 -0
- package/dist/web-server/models-dev/types.js.map +1 -0
- package/dist/web-server/overview-routes.d.ts.map +1 -1
- package/dist/web-server/overview-routes.js +3 -3
- package/dist/web-server/overview-routes.js.map +1 -1
- package/dist/web-server/routes/account-route-helpers.d.ts +3 -0
- package/dist/web-server/routes/account-route-helpers.d.ts.map +1 -1
- package/dist/web-server/routes/account-route-helpers.js.map +1 -1
- package/dist/web-server/routes/account-routes.d.ts.map +1 -1
- package/dist/web-server/routes/account-routes.js +105 -12
- package/dist/web-server/routes/account-routes.js.map +1 -1
- package/dist/web-server/routes/auth-routes.d.ts +10 -0
- package/dist/web-server/routes/auth-routes.d.ts.map +1 -1
- package/dist/web-server/routes/auth-routes.js +37 -10
- package/dist/web-server/routes/auth-routes.js.map +1 -1
- package/dist/web-server/routes/browser-routes.d.ts +3 -0
- package/dist/web-server/routes/browser-routes.d.ts.map +1 -0
- package/dist/web-server/routes/browser-routes.js +182 -0
- package/dist/web-server/routes/browser-routes.js.map +1 -0
- package/dist/web-server/routes/catalog-routes.d.ts.map +1 -1
- package/dist/web-server/routes/catalog-routes.js +9 -8
- package/dist/web-server/routes/catalog-routes.js.map +1 -1
- package/dist/web-server/routes/channels-routes.d.ts.map +1 -1
- package/dist/web-server/routes/channels-routes.js +4 -4
- package/dist/web-server/routes/channels-routes.js.map +1 -1
- package/dist/web-server/routes/claude-extension-routes.d.ts.map +1 -1
- package/dist/web-server/routes/claude-extension-routes.js +5 -0
- package/dist/web-server/routes/claude-extension-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts +8 -0
- package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-auth-routes.js +281 -89
- package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-local-proxy.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-local-proxy.js +27 -17
- package/dist/web-server/routes/cliproxy-local-proxy.js.map +1 -1
- package/dist/web-server/routes/cliproxy-routing-routes.d.ts +3 -0
- package/dist/web-server/routes/cliproxy-routing-routes.d.ts.map +1 -0
- package/dist/web-server/routes/cliproxy-routing-routes.js +69 -0
- package/dist/web-server/routes/cliproxy-routing-routes.js.map +1 -0
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts +35 -0
- package/dist/web-server/routes/cliproxy-stats-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-stats-routes.js +86 -42
- package/dist/web-server/routes/cliproxy-stats-routes.js.map +1 -1
- package/dist/web-server/routes/cliproxy-sync-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cliproxy-sync-routes.js +2 -2
- package/dist/web-server/routes/cliproxy-sync-routes.js.map +1 -1
- package/dist/web-server/routes/codex-routes.d.ts.map +1 -1
- package/dist/web-server/routes/codex-routes.js +7 -0
- package/dist/web-server/routes/codex-routes.js.map +1 -1
- package/dist/web-server/routes/config-routes.d.ts.map +1 -1
- package/dist/web-server/routes/config-routes.js +9 -6
- package/dist/web-server/routes/config-routes.js.map +1 -1
- package/dist/web-server/routes/copilot-routes.d.ts.map +1 -1
- package/dist/web-server/routes/copilot-routes.js +3 -3
- package/dist/web-server/routes/copilot-routes.js.map +1 -1
- package/dist/web-server/routes/copilot-settings-routes.d.ts.map +1 -1
- package/dist/web-server/routes/copilot-settings-routes.js +6 -7
- package/dist/web-server/routes/copilot-settings-routes.js.map +1 -1
- package/dist/web-server/routes/cursor-routes.d.ts +2 -0
- package/dist/web-server/routes/cursor-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cursor-routes.js +48 -6
- package/dist/web-server/routes/cursor-routes.js.map +1 -1
- package/dist/web-server/routes/cursor-settings-routes.d.ts.map +1 -1
- package/dist/web-server/routes/cursor-settings-routes.js +8 -9
- package/dist/web-server/routes/cursor-settings-routes.js.map +1 -1
- package/dist/web-server/routes/image-analysis-routes.d.ts.map +1 -1
- package/dist/web-server/routes/image-analysis-routes.js +7 -17
- package/dist/web-server/routes/image-analysis-routes.js.map +1 -1
- package/dist/web-server/routes/index.d.ts.map +1 -1
- package/dist/web-server/routes/index.js +25 -0
- package/dist/web-server/routes/index.js.map +1 -1
- package/dist/web-server/routes/logs-routes.d.ts +3 -0
- package/dist/web-server/routes/logs-routes.d.ts.map +1 -0
- package/dist/web-server/routes/logs-routes.js +75 -0
- package/dist/web-server/routes/logs-routes.js.map +1 -0
- package/dist/web-server/routes/misc-routes.d.ts.map +1 -1
- package/dist/web-server/routes/misc-routes.js +10 -11
- package/dist/web-server/routes/misc-routes.js.map +1 -1
- package/dist/web-server/routes/profile-routes.d.ts.map +1 -1
- package/dist/web-server/routes/profile-routes.js +21 -3
- package/dist/web-server/routes/profile-routes.js.map +1 -1
- package/dist/web-server/routes/provider-routes.js +1 -1
- package/dist/web-server/routes/provider-routes.js.map +1 -1
- package/dist/web-server/routes/proxy-routes.d.ts.map +1 -1
- package/dist/web-server/routes/proxy-routes.js +42 -12
- package/dist/web-server/routes/proxy-routes.js.map +1 -1
- package/dist/web-server/routes/route-helpers.d.ts +1 -0
- package/dist/web-server/routes/route-helpers.d.ts.map +1 -1
- package/dist/web-server/routes/route-helpers.js +19 -7
- package/dist/web-server/routes/route-helpers.js.map +1 -1
- package/dist/web-server/routes/settings-routes.d.ts.map +1 -1
- package/dist/web-server/routes/settings-routes.js +110 -23
- package/dist/web-server/routes/settings-routes.js.map +1 -1
- package/dist/web-server/routes/variant-routes.js +1 -1
- package/dist/web-server/routes/variant-routes.js.map +1 -1
- package/dist/web-server/routes/websearch-routes.d.ts.map +1 -1
- package/dist/web-server/routes/websearch-routes.js +41 -4
- package/dist/web-server/routes/websearch-routes.js.map +1 -1
- package/dist/web-server/services/claude-extension-binding-service.js +2 -2
- package/dist/web-server/services/claude-extension-binding-service.js.map +1 -1
- package/dist/web-server/services/cliproxy-dashboard-install-service.d.ts.map +1 -1
- package/dist/web-server/services/cliproxy-dashboard-install-service.js +22 -6
- package/dist/web-server/services/cliproxy-dashboard-install-service.js.map +1 -1
- package/dist/web-server/services/codex-dashboard-service.d.ts +1 -0
- package/dist/web-server/services/codex-dashboard-service.d.ts.map +1 -1
- package/dist/web-server/services/compatible-cli-docs-registry.d.ts.map +1 -1
- package/dist/web-server/services/compatible-cli-docs-registry.js +1 -0
- package/dist/web-server/services/compatible-cli-docs-registry.js.map +1 -1
- package/dist/web-server/services/droid-dashboard-service.d.ts +1 -0
- package/dist/web-server/services/droid-dashboard-service.d.ts.map +1 -1
- package/dist/web-server/services/logs-dashboard-service.d.ts +7 -0
- package/dist/web-server/services/logs-dashboard-service.d.ts.map +1 -0
- package/dist/web-server/services/logs-dashboard-service.js +33 -0
- package/dist/web-server/services/logs-dashboard-service.js.map +1 -0
- package/dist/web-server/shared-routes-collections.d.ts +13 -0
- package/dist/web-server/shared-routes-collections.d.ts.map +1 -0
- package/dist/web-server/shared-routes-collections.js +170 -0
- package/dist/web-server/shared-routes-collections.js.map +1 -0
- package/dist/web-server/shared-routes-content.d.ts +16 -0
- package/dist/web-server/shared-routes-content.d.ts.map +1 -0
- package/dist/web-server/shared-routes-content.js +152 -0
- package/dist/web-server/shared-routes-content.js.map +1 -0
- package/dist/web-server/shared-routes-markdown-walker.d.ts +12 -0
- package/dist/web-server/shared-routes-markdown-walker.d.ts.map +1 -0
- package/dist/web-server/shared-routes-markdown-walker.js +97 -0
- package/dist/web-server/shared-routes-markdown-walker.js.map +1 -0
- package/dist/web-server/shared-routes-markdown.d.ts +18 -0
- package/dist/web-server/shared-routes-markdown.d.ts.map +1 -0
- package/dist/web-server/shared-routes-markdown.js +167 -0
- package/dist/web-server/shared-routes-markdown.js.map +1 -0
- package/dist/web-server/shared-routes-path-guards.d.ts +16 -0
- package/dist/web-server/shared-routes-path-guards.d.ts.map +1 -0
- package/dist/web-server/shared-routes-path-guards.js +93 -0
- package/dist/web-server/shared-routes-path-guards.js.map +1 -0
- package/dist/web-server/shared-routes-plugin-registry-content.d.ts +12 -0
- package/dist/web-server/shared-routes-plugin-registry-content.d.ts.map +1 -0
- package/dist/web-server/shared-routes-plugin-registry-content.js +93 -0
- package/dist/web-server/shared-routes-plugin-registry-content.js.map +1 -0
- package/dist/web-server/shared-routes-plugins.d.ts +21 -0
- package/dist/web-server/shared-routes-plugins.d.ts.map +1 -0
- package/dist/web-server/shared-routes-plugins.js +197 -0
- package/dist/web-server/shared-routes-plugins.js.map +1 -0
- package/dist/web-server/shared-routes-symlink-status.d.ts +27 -0
- package/dist/web-server/shared-routes-symlink-status.d.ts.map +1 -0
- package/dist/web-server/shared-routes-symlink-status.js +135 -0
- package/dist/web-server/shared-routes-symlink-status.js.map +1 -0
- package/dist/web-server/shared-routes-types.d.ts +23 -0
- package/dist/web-server/shared-routes-types.d.ts.map +1 -0
- package/dist/web-server/shared-routes-types.js +15 -0
- package/dist/web-server/shared-routes-types.js.map +1 -0
- package/dist/web-server/shared-routes.d.ts +2 -1
- package/dist/web-server/shared-routes.d.ts.map +1 -1
- package/dist/web-server/shared-routes.js +50 -456
- package/dist/web-server/shared-routes.js.map +1 -1
- package/dist/web-server/usage/aggregator.d.ts +14 -7
- package/dist/web-server/usage/aggregator.d.ts.map +1 -1
- package/dist/web-server/usage/aggregator.js +164 -55
- package/dist/web-server/usage/aggregator.js.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-syncer.d.ts +1 -16
- package/dist/web-server/usage/cliproxy-usage-syncer.d.ts.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-syncer.js +186 -61
- package/dist/web-server/usage/cliproxy-usage-syncer.js.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.d.ts +22 -7
- package/dist/web-server/usage/cliproxy-usage-transformer.d.ts.map +1 -1
- package/dist/web-server/usage/cliproxy-usage-transformer.js +278 -28
- package/dist/web-server/usage/cliproxy-usage-transformer.js.map +1 -1
- package/dist/web-server/usage/codex-native-usage-collector.d.ts +13 -0
- package/dist/web-server/usage/codex-native-usage-collector.d.ts.map +1 -0
- package/dist/web-server/usage/codex-native-usage-collector.js +291 -0
- package/dist/web-server/usage/codex-native-usage-collector.js.map +1 -0
- package/dist/web-server/usage/data-aggregator.d.ts.map +1 -1
- package/dist/web-server/usage/data-aggregator.js +45 -46
- package/dist/web-server/usage/data-aggregator.js.map +1 -1
- package/dist/web-server/usage/disk-cache.js +2 -2
- package/dist/web-server/usage/disk-cache.js.map +1 -1
- package/dist/web-server/usage/droid-native-usage-collector.d.ts +14 -0
- package/dist/web-server/usage/droid-native-usage-collector.d.ts.map +1 -0
- package/dist/web-server/usage/droid-native-usage-collector.js +201 -0
- package/dist/web-server/usage/droid-native-usage-collector.js.map +1 -0
- package/dist/web-server/usage/handlers.d.ts +11 -8
- package/dist/web-server/usage/handlers.d.ts.map +1 -1
- package/dist/web-server/usage/handlers.js +197 -74
- package/dist/web-server/usage/handlers.js.map +1 -1
- package/dist/web-server/usage/model-identity.d.ts +16 -0
- package/dist/web-server/usage/model-identity.d.ts.map +1 -0
- package/dist/web-server/usage/model-identity.js +70 -0
- package/dist/web-server/usage/model-identity.js.map +1 -0
- package/dist/web-server/usage/profile-filter.d.ts +13 -0
- package/dist/web-server/usage/profile-filter.d.ts.map +1 -0
- package/dist/web-server/usage/profile-filter.js +35 -0
- package/dist/web-server/usage/profile-filter.js.map +1 -0
- package/dist/web-server/usage/routes.d.ts.map +1 -1
- package/dist/web-server/usage/routes.js +19 -6
- package/dist/web-server/usage/routes.js.map +1 -1
- package/dist/web-server/usage/sqlite-cli.d.ts +27 -0
- package/dist/web-server/usage/sqlite-cli.d.ts.map +1 -0
- package/dist/web-server/usage/sqlite-cli.js +186 -0
- package/dist/web-server/usage/sqlite-cli.js.map +1 -0
- package/dist/web-server/usage/types.d.ts +14 -0
- package/dist/web-server/usage/types.d.ts.map +1 -1
- package/dist/web-server/websocket.d.ts.map +1 -1
- package/dist/web-server/websocket.js +25 -16
- package/dist/web-server/websocket.js.map +1 -1
- package/lib/hooks/image-analyzer-transformer.cjs +54 -3
- package/lib/hooks/websearch-transformer.cjs +136 -0
- package/lib/mcp/ccs-browser-server.cjs +6769 -0
- package/lib/mcp/ccs-websearch-server.cjs +1 -1
- package/package.json +6 -6
- package/scripts/ci-parity-gate.sh +22 -3
- package/scripts/dev-release.sh +4 -2
- package/scripts/ensure-deps.sh +18 -0
- package/scripts/run-test-bucket.js +188 -0
- package/scripts/verify-bundle.js +4 -1
- package/dist/cliproxy/account-manager.d.ts +0 -16
- package/dist/cliproxy/account-manager.d.ts.map +0 -1
- package/dist/cliproxy/account-manager.js +0 -51
- package/dist/cliproxy/account-manager.js.map +0 -1
- package/dist/cliproxy/account-safety.d.ts +0 -92
- package/dist/cliproxy/account-safety.d.ts.map +0 -1
- package/dist/cliproxy/account-safety.js +0 -496
- package/dist/cliproxy/account-safety.js.map +0 -1
- package/dist/cliproxy/account-stats-key.d.ts.map +0 -1
- package/dist/cliproxy/account-stats-key.js.map +0 -1
- package/dist/cliproxy/antigravity-responsibility.d.ts.map +0 -1
- package/dist/cliproxy/antigravity-responsibility.js +0 -171
- package/dist/cliproxy/antigravity-responsibility.js.map +0 -1
- package/dist/cliproxy/auth/gemini-token-refresh.d.ts +0 -40
- package/dist/cliproxy/auth/gemini-token-refresh.d.ts.map +0 -1
- package/dist/cliproxy/auth/gemini-token-refresh.js +0 -371
- package/dist/cliproxy/auth/gemini-token-refresh.js.map +0 -1
- package/dist/cliproxy/auth-handler.d.ts +0 -31
- package/dist/cliproxy/auth-handler.d.ts.map +0 -1
- package/dist/cliproxy/auth-handler.js +0 -60
- package/dist/cliproxy/auth-handler.js.map +0 -1
- package/dist/cliproxy/auth-session-manager.d.ts +0 -51
- package/dist/cliproxy/auth-session-manager.d.ts.map +0 -1
- package/dist/cliproxy/auth-session-manager.js +0 -134
- package/dist/cliproxy/auth-session-manager.js.map +0 -1
- package/dist/cliproxy/auth-token-manager.d.ts.map +0 -1
- package/dist/cliproxy/auth-token-manager.js +0 -184
- package/dist/cliproxy/auth-token-manager.js.map +0 -1
- package/dist/cliproxy/auth-utils.d.ts +0 -16
- package/dist/cliproxy/auth-utils.d.ts.map +0 -1
- package/dist/cliproxy/auth-utils.js +0 -33
- package/dist/cliproxy/auth-utils.js.map +0 -1
- package/dist/cliproxy/base-config-loader.d.ts +0 -42
- package/dist/cliproxy/base-config-loader.d.ts.map +0 -1
- package/dist/cliproxy/base-config-loader.js +0 -123
- package/dist/cliproxy/base-config-loader.js.map +0 -1
- package/dist/cliproxy/catalog-cache.d.ts +0 -39
- package/dist/cliproxy/catalog-cache.d.ts.map +0 -1
- package/dist/cliproxy/catalog-cache.js +0 -254
- package/dist/cliproxy/catalog-cache.js.map +0 -1
- package/dist/cliproxy/cliproxy-executor.d.ts +0 -16
- package/dist/cliproxy/cliproxy-executor.d.ts.map +0 -1
- package/dist/cliproxy/cliproxy-executor.js +0 -27
- package/dist/cliproxy/cliproxy-executor.js.map +0 -1
- package/dist/cliproxy/codex-plan-compatibility.d.ts +0 -39
- package/dist/cliproxy/codex-plan-compatibility.d.ts.map +0 -1
- package/dist/cliproxy/codex-plan-compatibility.js +0 -134
- package/dist/cliproxy/codex-plan-compatibility.js.map +0 -1
- package/dist/cliproxy/codex-reasoning-proxy.d.ts +0 -61
- package/dist/cliproxy/codex-reasoning-proxy.d.ts.map +0 -1
- package/dist/cliproxy/codex-reasoning-proxy.js +0 -495
- package/dist/cliproxy/codex-reasoning-proxy.js.map +0 -1
- package/dist/cliproxy/composite-validator.d.ts.map +0 -1
- package/dist/cliproxy/composite-validator.js +0 -94
- package/dist/cliproxy/composite-validator.js.map +0 -1
- package/dist/cliproxy/config-generator.d.ts +0 -15
- package/dist/cliproxy/config-generator.d.ts.map +0 -1
- package/dist/cliproxy/config-generator.js +0 -32
- package/dist/cliproxy/config-generator.js.map +0 -1
- package/dist/cliproxy/device-code-handler.d.ts.map +0 -1
- package/dist/cliproxy/device-code-handler.js.map +0 -1
- package/dist/cliproxy/gemini-cli-quota-normalizer.d.ts.map +0 -1
- package/dist/cliproxy/gemini-cli-quota-normalizer.js +0 -122
- package/dist/cliproxy/gemini-cli-quota-normalizer.js.map +0 -1
- package/dist/cliproxy/https-tunnel-proxy.d.ts.map +0 -1
- package/dist/cliproxy/https-tunnel-proxy.js +0 -224
- package/dist/cliproxy/https-tunnel-proxy.js.map +0 -1
- package/dist/cliproxy/management-api-client.d.ts +0 -81
- package/dist/cliproxy/management-api-client.d.ts.map +0 -1
- package/dist/cliproxy/management-api-client.js +0 -381
- package/dist/cliproxy/management-api-client.js.map +0 -1
- package/dist/cliproxy/management-api-types.d.ts.map +0 -1
- package/dist/cliproxy/management-api-types.js.map +0 -1
- package/dist/cliproxy/model-config.d.ts +0 -31
- package/dist/cliproxy/model-config.d.ts.map +0 -1
- package/dist/cliproxy/model-config.js +0 -271
- package/dist/cliproxy/model-config.js.map +0 -1
- package/dist/cliproxy/model-id-normalizer.d.ts +0 -105
- package/dist/cliproxy/model-id-normalizer.d.ts.map +0 -1
- package/dist/cliproxy/model-id-normalizer.js +0 -241
- package/dist/cliproxy/model-id-normalizer.js.map +0 -1
- package/dist/cliproxy/openai-compat-manager.d.ts.map +0 -1
- package/dist/cliproxy/openai-compat-manager.js +0 -191
- package/dist/cliproxy/openai-compat-manager.js.map +0 -1
- package/dist/cliproxy/platform-detector.d.ts +0 -99
- package/dist/cliproxy/platform-detector.d.ts.map +0 -1
- package/dist/cliproxy/platform-detector.js +0 -174
- package/dist/cliproxy/platform-detector.js.map +0 -1
- package/dist/cliproxy/project-selection-handler.d.ts.map +0 -1
- package/dist/cliproxy/project-selection-handler.js.map +0 -1
- package/dist/cliproxy/proxy-config-resolver.d.ts +0 -87
- package/dist/cliproxy/proxy-config-resolver.d.ts.map +0 -1
- package/dist/cliproxy/proxy-config-resolver.js +0 -254
- package/dist/cliproxy/proxy-config-resolver.js.map +0 -1
- package/dist/cliproxy/proxy-detector.d.ts +0 -72
- package/dist/cliproxy/proxy-detector.d.ts.map +0 -1
- package/dist/cliproxy/proxy-detector.js +0 -196
- package/dist/cliproxy/proxy-detector.js.map +0 -1
- package/dist/cliproxy/proxy-target-resolver.d.ts.map +0 -1
- package/dist/cliproxy/proxy-target-resolver.js +0 -108
- package/dist/cliproxy/proxy-target-resolver.js.map +0 -1
- package/dist/cliproxy/quota-fetcher-claude-normalizer.d.ts +0 -18
- package/dist/cliproxy/quota-fetcher-claude-normalizer.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher-claude-normalizer.js +0 -291
- package/dist/cliproxy/quota-fetcher-claude-normalizer.js.map +0 -1
- package/dist/cliproxy/quota-fetcher-claude.d.ts +0 -21
- package/dist/cliproxy/quota-fetcher-claude.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher-claude.js +0 -306
- package/dist/cliproxy/quota-fetcher-claude.js.map +0 -1
- package/dist/cliproxy/quota-fetcher-codex.d.ts +0 -69
- package/dist/cliproxy/quota-fetcher-codex.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher-codex.js +0 -599
- package/dist/cliproxy/quota-fetcher-codex.js.map +0 -1
- package/dist/cliproxy/quota-fetcher-gemini-cli.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher-gemini-cli.js +0 -661
- package/dist/cliproxy/quota-fetcher-gemini-cli.js.map +0 -1
- package/dist/cliproxy/quota-fetcher-ghcp.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher-ghcp.js +0 -207
- package/dist/cliproxy/quota-fetcher-ghcp.js.map +0 -1
- package/dist/cliproxy/quota-fetcher.d.ts +0 -107
- package/dist/cliproxy/quota-fetcher.d.ts.map +0 -1
- package/dist/cliproxy/quota-fetcher.js +0 -657
- package/dist/cliproxy/quota-fetcher.js.map +0 -1
- package/dist/cliproxy/quota-manager.d.ts +0 -105
- package/dist/cliproxy/quota-manager.d.ts.map +0 -1
- package/dist/cliproxy/quota-manager.js +0 -485
- package/dist/cliproxy/quota-manager.js.map +0 -1
- package/dist/cliproxy/quota-response-cache.d.ts.map +0 -1
- package/dist/cliproxy/quota-response-cache.js.map +0 -1
- package/dist/cliproxy/quota-types.d.ts +0 -245
- package/dist/cliproxy/quota-types.d.ts.map +0 -1
- package/dist/cliproxy/quota-types.js.map +0 -1
- package/dist/cliproxy/remote-auth-fetcher.d.ts +0 -30
- package/dist/cliproxy/remote-auth-fetcher.d.ts.map +0 -1
- package/dist/cliproxy/remote-auth-fetcher.js +0 -177
- package/dist/cliproxy/remote-auth-fetcher.js.map +0 -1
- package/dist/cliproxy/remote-proxy-client.d.ts.map +0 -1
- package/dist/cliproxy/remote-proxy-client.js +0 -281
- package/dist/cliproxy/remote-proxy-client.js.map +0 -1
- package/dist/cliproxy/remote-token-uploader.d.ts.map +0 -1
- package/dist/cliproxy/remote-token-uploader.js +0 -178
- package/dist/cliproxy/remote-token-uploader.js.map +0 -1
- package/dist/cliproxy/schema-sanitizer.d.ts.map +0 -1
- package/dist/cliproxy/schema-sanitizer.js.map +0 -1
- package/dist/cliproxy/startup-lock.d.ts.map +0 -1
- package/dist/cliproxy/startup-lock.js +0 -216
- package/dist/cliproxy/startup-lock.js.map +0 -1
- package/dist/cliproxy/stats-fetcher.d.ts +0 -158
- package/dist/cliproxy/stats-fetcher.d.ts.map +0 -1
- package/dist/cliproxy/stats-fetcher.js +0 -246
- package/dist/cliproxy/stats-fetcher.js.map +0 -1
- package/dist/cliproxy/stats-transformer.d.ts.map +0 -1
- package/dist/cliproxy/stats-transformer.js +0 -152
- package/dist/cliproxy/stats-transformer.js.map +0 -1
- package/dist/cliproxy/tool-name-mapper.d.ts +0 -103
- package/dist/cliproxy/tool-name-mapper.d.ts.map +0 -1
- package/dist/cliproxy/tool-name-mapper.js +0 -149
- package/dist/cliproxy/tool-name-mapper.js.map +0 -1
- package/dist/cliproxy/tool-name-sanitizer.d.ts +0 -65
- package/dist/cliproxy/tool-name-sanitizer.d.ts.map +0 -1
- package/dist/cliproxy/tool-name-sanitizer.js +0 -118
- package/dist/cliproxy/tool-name-sanitizer.js.map +0 -1
- package/dist/cliproxy/tool-sanitization-proxy.d.ts +0 -77
- package/dist/cliproxy/tool-sanitization-proxy.d.ts.map +0 -1
- package/dist/cliproxy/tool-sanitization-proxy.js +0 -643
- package/dist/cliproxy/tool-sanitization-proxy.js.map +0 -1
- package/dist/commands/cliproxy/resolve-lifecycle-port.d.ts +0 -9
- package/dist/commands/cliproxy/resolve-lifecycle-port.d.ts.map +0 -1
- package/dist/commands/cliproxy/resolve-lifecycle-port.js +0 -14
- package/dist/commands/cliproxy/resolve-lifecycle-port.js.map +0 -1
- package/dist/ui/assets/accounts-DhtktAIG.js +0 -1
- package/dist/ui/assets/alert-dialog-DQK2Jxfk.js +0 -1
- package/dist/ui/assets/api-Den1YY2d.js +0 -4
- package/dist/ui/assets/auth-section-BQitOLMK.js +0 -1
- package/dist/ui/assets/backups-section-BLGK5re-.js +0 -1
- package/dist/ui/assets/channels-Dop1axTi.js +0 -1
- package/dist/ui/assets/charts-BBPXh0Ar.js +0 -64
- package/dist/ui/assets/checkbox-DDrDuGxi.js +0 -1
- package/dist/ui/assets/claude-extension-6WjTc0o8.js +0 -1
- package/dist/ui/assets/cliproxy-Ch7RdSMG.js +0 -3
- package/dist/ui/assets/cliproxy-ai-providers-DjybBlb5.js +0 -21
- package/dist/ui/assets/cliproxy-control-panel-DDif_QAT.js +0 -1
- package/dist/ui/assets/code-highlight-BRUf_pqB.js +0 -3
- package/dist/ui/assets/codex-DFAV50Ee.js +0 -27
- package/dist/ui/assets/confirm-dialog-CP26_Zko.js +0 -1
- package/dist/ui/assets/copilot-uZuyhqwv.js +0 -3
- package/dist/ui/assets/cursor-CuaM2FmN.js +0 -1
- package/dist/ui/assets/droid-DdjXJ2lF.js +0 -2
- package/dist/ui/assets/form-utils-Bcoyqxpq.js +0 -20
- package/dist/ui/assets/globalenv-section-D5_-EIlf.js +0 -1
- package/dist/ui/assets/health-BHhVKLNR.js +0 -1
- package/dist/ui/assets/icons-CQ3MLSan.js +0 -1
- package/dist/ui/assets/index-B8bAYHAs.js +0 -1
- package/dist/ui/assets/index-Ba-43jCS.js +0 -1
- package/dist/ui/assets/index-Bb2CPQik.css +0 -1
- package/dist/ui/assets/index-Bm09kGOw.js +0 -1
- package/dist/ui/assets/index-DHY37v8a.js +0 -1
- package/dist/ui/assets/index-DLCFe4s3.js +0 -1
- package/dist/ui/assets/index-TSYtCr3K.js +0 -69
- package/dist/ui/assets/masked-input-CTkIqCMg.js +0 -1
- package/dist/ui/assets/notifications-B2HqRBj7.js +0 -1
- package/dist/ui/assets/proxy-status-widget-DPhKjJFl.js +0 -1
- package/dist/ui/assets/radix-ui-BlliRfHq.js +0 -51
- package/dist/ui/assets/raw-json-settings-editor-panel-DQr_y0E4.js +0 -1
- package/dist/ui/assets/react-vendor-CNOkPC89.js +0 -3
- package/dist/ui/assets/searchable-select-C2sP7JW5.js +0 -1
- package/dist/ui/assets/separator-2lt47Sla.js +0 -1
- package/dist/ui/assets/shared-DPKtsiFQ.js +0 -8
- package/dist/ui/assets/table-DbsFACgT.js +0 -1
- package/dist/ui/assets/tanstack-BjiH4QZq.js +0 -4
- package/dist/ui/assets/updates-C5iL4KNn.js +0 -1
- package/scripts/github/build-ai-review-packet.mjs +0 -242
- package/scripts/github/normalize-ai-review-output.mjs +0 -934
- package/scripts/github/prepare-ai-review-scope.mjs +0 -324
- package/scripts/github/run-ai-review-direct.mjs +0 -349
- /package/dist/cliproxy/{account-stats-key.d.ts → accounts/account-stats-key.d.ts} +0 -0
- /package/dist/cliproxy/{account-stats-key.js → accounts/account-stats-key.js} +0 -0
- /package/dist/cliproxy/{openai-compat-manager.d.ts → ai-providers/openai-compat-manager.d.ts} +0 -0
- /package/dist/cliproxy/{schema-sanitizer.d.ts → ai-providers/schema-sanitizer.d.ts} +0 -0
- /package/dist/cliproxy/{schema-sanitizer.js → ai-providers/schema-sanitizer.js} +0 -0
- /package/dist/cliproxy/{antigravity-responsibility.d.ts → auth/antigravity-responsibility.d.ts} +0 -0
- /package/dist/cliproxy/{auth-token-manager.d.ts → auth/auth-token-manager.d.ts} +0 -0
- /package/dist/cliproxy/{device-code-handler.d.ts → auth/device-code-handler.d.ts} +0 -0
- /package/dist/cliproxy/{device-code-handler.js → auth/device-code-handler.js} +0 -0
- /package/dist/cliproxy/{project-selection-handler.d.ts → auth/project-selection-handler.d.ts} +0 -0
- /package/dist/cliproxy/{project-selection-handler.js → auth/project-selection-handler.js} +0 -0
- /package/dist/cliproxy/{composite-validator.d.ts → config/composite-validator.d.ts} +0 -0
- /package/dist/cliproxy/{management-api-types.d.ts → management/management-api-types.d.ts} +0 -0
- /package/dist/cliproxy/{management-api-types.js → management/management-api-types.js} +0 -0
- /package/dist/cliproxy/{remote-token-uploader.d.ts → management/remote-token-uploader.d.ts} +0 -0
- /package/dist/cliproxy/{https-tunnel-proxy.d.ts → proxy/https-tunnel-proxy.d.ts} +0 -0
- /package/dist/cliproxy/{proxy-target-resolver.d.ts → proxy/proxy-target-resolver.d.ts} +0 -0
- /package/dist/cliproxy/{gemini-cli-quota-normalizer.d.ts → quota/gemini-cli-quota-normalizer.d.ts} +0 -0
- /package/dist/cliproxy/{quota-fetcher-gemini-cli.d.ts → quota/quota-fetcher-gemini-cli.d.ts} +0 -0
- /package/dist/cliproxy/{quota-fetcher-ghcp.d.ts → quota/quota-fetcher-ghcp.d.ts} +0 -0
- /package/dist/cliproxy/{quota-response-cache.d.ts → quota/quota-response-cache.d.ts} +0 -0
- /package/dist/cliproxy/{quota-response-cache.js → quota/quota-response-cache.js} +0 -0
- /package/dist/cliproxy/{quota-types.js → quota/quota-types.js} +0 -0
- /package/dist/cliproxy/{remote-proxy-client.d.ts → services/remote-proxy-client.d.ts} +0 -0
- /package/dist/cliproxy/{startup-lock.d.ts → services/startup-lock.d.ts} +0 -0
- /package/dist/cliproxy/{stats-transformer.d.ts → services/stats-transformer.d.ts} +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{j as e}from"./radix-ui-DvRtHWGI.js";import{r as x,e as Ye}from"./react-vendor-Bjx91N7w.js";import{a as Q,B as L,c as H,T as We,z as Ve,A as Ge,o as Xe,p as Ze,q as es,r as ss,s as he,e as C,E as oe,L as _,I as z,F as Y,G as Re,H as ts,J as as,K as rs,M as ns,S as be,N as te,O as ge,Q as Ae,R as is,U as os,V as De,W as Me,X as _e,Y as ls,Z as cs,_ as we,$ as Ce,a0 as ae,a1 as ds,x as Le,a2 as ve,C as Qe,b as Fe,v as ms,w as us,a3 as xs,d as hs,a4 as ps,a5 as gs,a6 as fs,a7 as js,a8 as Ns,a9 as vs,aa as bs,ab as ws}from"./index-7dfuc3Cf.js";import{a as Cs,u as fe,b as ye}from"./tanstack-Dg84L5cM.js";import{C as je}from"./confirm-dialog-iyu6jSnb.js";import{t as E}from"./notifications-B4_o8bcr.js";import{L as re,R as Z,aq as He,av as ys,a8 as ne,Y as ks,aw as Ie,a9 as ie,C as Ue,ax as Ss,a6 as Ps,ay as Os,o as Ne,X as Ts,az as Es,Z as ze,aA as Be,m as ke,aB as Se,aC as Rs,aD as pe,a5 as As,ad as Ds,ap as Ms,v as Ke,aE as _s,w as $e,n as Ls,aF as Qs}from"./icons-bxdfpJdB.js";import{M as Je}from"./masked-input-Bl5OoUEZ.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";import"./alert-dialog-B9kuXS_B.js";function Fs({className:s,showTooltip:a=!0}){const{t:r}=Q(),c=e.jsxs(L,{variant:"outline",className:H("bg-accent/10 border-accent/30 text-accent","dark:bg-accent/20 dark:border-accent/40 dark:text-accent-foreground",s),children:[e.jsx("img",{src:"/icons/openrouter.svg",alt:"OpenRouter",className:"mr-1 h-3 w-3"}),"OpenRouter"]});return a?e.jsxs(We,{children:[e.jsx(Ve,{asChild:!0,children:c}),e.jsx(Ge,{children:e.jsx("p",{children:r("openrouterBadge.integration")})})]}):c}function Pe(s){return[/^ANTHROPIC_AUTH_TOKEN$/,/_API_KEY$/,/_AUTH_TOKEN$/,/^API_KEY$/,/^AUTH_TOKEN$/,/_SECRET$/,/^SECRET$/].some(r=>r.test(s))}function qe(s){return s?.env?(s.env.ANTHROPIC_BASE_URL||"").toLowerCase().includes("openrouter.ai"):!1}function Hs(s){return{opus:s.ANTHROPIC_DEFAULT_OPUS_MODEL||void 0,sonnet:s.ANTHROPIC_DEFAULT_SONNET_MODEL||void 0,haiku:s.ANTHROPIC_DEFAULT_HAIKU_MODEL||void 0}}function Is(s,a){const r={...s};return a.opus?r.ANTHROPIC_DEFAULT_OPUS_MODEL=a.opus:delete r.ANTHROPIC_DEFAULT_OPUS_MODEL,a.sonnet?r.ANTHROPIC_DEFAULT_SONNET_MODEL=a.sonnet:delete r.ANTHROPIC_DEFAULT_SONNET_MODEL,a.haiku?r.ANTHROPIC_DEFAULT_HAIKU_MODEL=a.haiku:delete r.ANTHROPIC_DEFAULT_HAIKU_MODEL,r}function Us({profileName:s,target:a,data:r,settings:c,isLoading:o,isSaving:p,isTargetSaving:f,hasChanges:g,isRawJsonValid:t,onTargetChange:m,onRefresh:u,onDelete:j,onSave:P}){const{t:b}=Q(),O=p||f,y=o||O;return e.jsxs("div",{className:"px-6 py-4 border-b bg-background flex items-center justify-between shrink-0",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-lg font-semibold",children:s}),r?.path&&e.jsx(L,{variant:"outline",className:"text-xs",children:r.path.replace(/^.*\//,"")}),qe(c)&&e.jsx(Fs,{className:"ml-1"})]}),r&&e.jsxs("p",{className:"text-xs text-muted-foreground mt-0.5",children:[b("profileEditor.lastModified"),": ",new Date(r.mtime).toLocaleString()]}),e.jsxs("div",{className:"mt-2 flex items-center gap-2",children:[e.jsxs("span",{className:"text-xs text-muted-foreground",children:[b("profileEditor.defaultTarget"),":"]}),e.jsxs(Xe,{value:a,onValueChange:k=>{y||m(k)},disabled:y,children:[e.jsx(Ze,{className:"h-7 w-[170px] text-xs",disabled:y,children:e.jsx(es,{})}),e.jsxs(ss,{children:[e.jsx(he,{value:"claude",children:b("profileEditor.targetClaude")}),e.jsx(he,{value:"droid",children:b("profileEditor.targetDroid")}),e.jsx(he,{value:"codex",children:b("profileEditor.targetCodex")})]})]}),f&&e.jsx(re,{className:"w-3.5 h-3.5 animate-spin text-muted-foreground"})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(C,{variant:"ghost",size:"sm",onClick:u,disabled:y,children:e.jsx(Z,{className:`w-4 h-4 ${o?"animate-spin":""}`})}),j&&e.jsx(C,{variant:"ghost",size:"sm",onClick:j,disabled:O,children:e.jsx(He,{className:"w-4 h-4 text-destructive"})}),e.jsx(C,{size:"sm",onClick:P,disabled:O||!g||!t,children:p?e.jsxs(e.Fragment,{children:[e.jsx(re,{className:"w-4 h-4 mr-1 animate-spin"}),b("profileEditor.saving")]}):e.jsxs(e.Fragment,{children:[e.jsx(ys,{className:"w-4 h-4 mr-1"}),b("settingsAuth.save")]})})]})]})}function zs({currentSettings:s,newEnvKey:a,newEnvValue:r,onNewEnvKeyChange:c,onNewEnvValueChange:o,onEnvValueChange:p,onAddEnvVar:f}){const{t:g}=Q();return e.jsxs(e.Fragment,{children:[e.jsx(oe,{className:"flex-1",children:e.jsx("div",{className:"p-4 space-y-4",children:s?.env&&Object.keys(s.env).length>0?e.jsx(e.Fragment,{children:Object.entries(s.env).map(([t,m])=>e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs(_,{className:"text-xs font-medium flex items-center gap-2 text-muted-foreground",children:[t,Pe(t)&&e.jsx(L,{variant:"secondary",className:"text-[10px] px-1 py-0 h-4",children:g("envEditor.sensitive")})]}),Pe(t)?e.jsx(Je,{value:m,onChange:u=>p(t,u.target.value),className:"font-mono text-sm h-8"}):e.jsx(z,{value:m,onChange:u=>p(t,u.target.value),className:"font-mono text-sm h-8"})]},t))}):e.jsxs("div",{className:"py-8 text-center text-muted-foreground bg-muted/30 rounded-lg border border-dashed text-sm",children:[e.jsx("p",{children:g("envEditor.none")}),e.jsx("p",{className:"text-xs mt-1 opacity-70",children:g("envEditor.noneHint")})]})})}),e.jsxs("div",{className:"p-4 border-t bg-background shrink-0",children:[e.jsx(_,{className:"text-xs font-medium text-muted-foreground",children:g("envEditor.addVariable")}),e.jsxs("div",{className:"flex gap-2 mt-2",children:[e.jsx(z,{placeholder:g("envEditor.keyPlaceholder"),value:a,onChange:t=>c(t.target.value.toUpperCase()),className:"font-mono text-sm h-8 w-2/5",onKeyDown:t=>t.key==="Enter"&&a.trim()&&f()}),e.jsx(z,{placeholder:g("envEditor.valuePlaceholder"),value:r,onChange:t=>o(t.target.value),className:"font-mono text-sm h-8 flex-1",onKeyDown:t=>t.key==="Enter"&&a.trim()&&f()}),e.jsx(C,{variant:"outline",size:"sm",className:"h-8",onClick:f,disabled:!a.trim(),children:e.jsx(ne,{className:"w-4 h-4"})})]})]})]})}function Bs({profileName:s,target:a,data:r}){const{t:c}=Q(),o=a==="droid";return e.jsx(oe,{className:"h-full",children:e.jsxs("div",{className:"p-4 space-y-6",children:[e.jsxs("div",{children:[e.jsxs("h3",{className:"text-sm font-medium flex items-center gap-2 mb-3",children:[e.jsx(ks,{className:"w-4 h-4"}),c("profileEditor.profileInfo")]}),e.jsx("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:r&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("profileEditor.profileName")}),e.jsx("span",{className:"font-mono",children:r.profile})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("profileEditor.filePath")}),e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-xs break-all",children:r.path}),e.jsx(Y,{value:r.path,size:"icon",className:"h-5 w-5"})]})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("profileEditor.lastModified")}),e.jsx("span",{className:"text-xs",children:new Date(r.mtime).toLocaleString()})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("profileEditor.defaultTarget")}),e.jsx("span",{className:"font-mono",children:a})]})]})})]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-medium mb-3",children:c("profileEditor.quickUsage")}),e.jsxs("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:[e.jsxs("div",{children:[e.jsx(_,{className:"text-xs text-muted-foreground",children:c("profileEditor.runWithProfile")}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsxs("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:["ccs ",s,' "prompt"']}),e.jsx(Y,{value:`ccs ${s} "prompt"`,size:"icon",className:"h-6 w-6"})]})]}),e.jsxs("div",{children:[e.jsx(_,{className:"text-xs text-muted-foreground",children:c(o?"profileEditor.droidAliasExplicit":"profileEditor.runOnDroid")}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsx("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:`ccs-droid ${s} "prompt"`}),e.jsx(Y,{value:`ccs-droid ${s} "prompt"`,size:"icon",className:"h-6 w-6"})]})]}),e.jsxs("div",{children:[e.jsx(_,{className:"text-xs text-muted-foreground",children:c(o?"profileEditor.overrideToClaude":"profileEditor.runOnDroidWithFlag")}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsxs("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:["ccs ",s," --target ",o?"claude":"droid",' "prompt"']}),e.jsx(Y,{value:`ccs ${s} --target ${o?"claude":"droid"} "prompt"`,size:"icon",className:"h-6 w-6"})]})]}),e.jsxs("div",{children:[e.jsx(_,{className:"text-xs text-muted-foreground",children:c("profileEditor.setAsDefault")}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsxs("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:["ccs default ",s]}),e.jsx(Y,{value:`ccs default ${s}`,size:"icon",className:"h-6 w-6"})]})]})]})]})]})})}function Ks({value:s,onChange:a,placeholder:r,className:c}){const{t:o}=Q(),[p,f]=x.useState(""),[g,t]=x.useState(null),{models:m,isLoading:u,isError:j,isFetching:P}=Re(),b=ts(),O=x.useMemo(()=>as(m,p,{category:g??void 0}),[m,p,g]),y=x.useMemo(()=>rs(m,2),[m]),k=!p.trim()&&!g,N=x.useMemo(()=>{const i={anthropic:[],openai:[],google:[],meta:[],mistral:[],opensource:[],other:[]};O.forEach(h=>{i[h.category].push(h)});for(const h of Object.keys(i))i[h]=ns(i[h]);return i},[O]),R=x.useCallback(()=>{b()},[b]),v=m.find(i=>i.id===s);return u&&m.length===0?e.jsxs("div",{className:H("space-y-2",c),children:[e.jsx(be,{className:"h-10 w-full"}),e.jsx(be,{className:"h-32 w-full"})]}):e.jsxs("div",{className:H("space-y-2 w-full min-w-0 overflow-hidden",c),children:[e.jsxs("div",{className:"flex gap-2",children:[e.jsxs("div",{className:"relative flex-1",children:[e.jsx(Ie,{className:"text-muted-foreground absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2"}),e.jsx(z,{value:p,onChange:i=>f(i.target.value),placeholder:r??o("openrouterModelPicker.searchModels"),className:"pl-9"})]}),e.jsx(C,{variant:"outline",size:"icon",onClick:R,disabled:P,title:"Refresh models",children:P?e.jsx(re,{className:"h-4 w-4 animate-spin"}):e.jsx(Z,{className:"h-4 w-4"})})]}),e.jsxs("div",{className:"flex flex-wrap gap-1",children:[e.jsxs(L,{variant:g===null?"default":"outline",className:"cursor-pointer",onClick:()=>t(null),children:["All (",m.length,")"]}),Object.keys(te).map(i=>{const h=N[i].length;return h===0?null:e.jsxs(L,{variant:g===i?"default":"outline",className:"cursor-pointer",onClick:()=>t(i),children:[te[i]," (",h,")"]},i)})]}),v&&e.jsxs("div",{className:"bg-muted rounded-md p-2 text-sm",children:[e.jsx("span",{className:"font-medium",children:v.name}),e.jsxs("span",{className:"text-muted-foreground ml-2",children:[ge(v.pricing)," |"," ",Ae(v.context_length)]})]}),e.jsx(oe,{className:"h-72 w-full rounded-md border",children:j?e.jsxs("div",{className:"text-destructive p-4 text-center",children:["Failed to load models."," ",e.jsx(C,{variant:"link",onClick:R,children:"Retry"})]}):O.length===0?e.jsxs("div",{className:"text-muted-foreground p-4 text-center",children:['No models found matching "',p,'"']}):e.jsxs("div",{className:"space-y-6 p-3",children:[k&&y.length>0&&e.jsxs("div",{children:[e.jsxs("div",{className:"text-muted-foreground bg-background sticky top-0 mb-2 flex items-center gap-1.5 py-1.5 text-xs font-semibold border-b pb-2",children:[e.jsx(ie,{className:"h-3 w-3 text-accent"}),e.jsx("span",{children:o("openrouterModelPicker.newestModels")})]}),e.jsx("div",{className:"space-y-1",children:y.map(i=>e.jsx(Oe,{model:i,isSelected:i.id===s,onClick:()=>a(i.id),showAge:!0},i.id))})]}),Object.keys(te).map(i=>{const h=N[i];return h.length===0?null:e.jsxs("div",{children:[e.jsx("div",{className:"text-muted-foreground bg-background sticky top-0 mb-2 py-1.5 text-xs font-semibold border-b pb-2",children:te[i]}),e.jsx("div",{className:"space-y-1",children:h.map(l=>e.jsx(Oe,{model:l,isSelected:l.id===s,onClick:()=>a(l.id)},l.id))})]},i)})]})})]})}function Oe({model:s,isSelected:a,onClick:r,showAge:c=!1}){return e.jsxs("button",{type:"button",onClick:r,className:H("group flex w-full items-center gap-2 rounded-md px-3 py-2 text-left text-sm transition-colors","hover:bg-accent hover:text-accent-foreground",a&&"bg-accent text-accent-foreground"),children:[e.jsx("span",{className:"flex-1 min-w-0 truncate font-medium",children:s.name}),e.jsxs("span",{className:H("flex shrink-0 items-center gap-1 text-xs whitespace-nowrap",a?"text-accent-foreground/80":"text-muted-foreground group-hover:text-accent-foreground/80"),children:[c&&s.created&&e.jsx(L,{variant:"outline",className:H("text-[10px] px-1",a?"border-accent-foreground/30 text-accent-foreground/80":"text-accent border-accent/30 group-hover:text-accent-foreground/80 group-hover:border-accent-foreground/30"),children:is(s.created)}),s.isFree?e.jsx(L,{variant:"secondary",className:H("text-[10px] px-1",a?"bg-accent-foreground/20 text-accent-foreground":"group-hover:bg-accent-foreground/20 group-hover:text-accent-foreground"),children:"Free"}):s.isExacto?e.jsxs(e.Fragment,{children:[e.jsx(L,{variant:"outline",className:H("text-[10px] px-1 border-emerald-500/50 text-emerald-600",a?"border-accent-foreground/30 text-accent-foreground/80":"group-hover:border-accent-foreground/30 group-hover:text-accent-foreground/80"),children:"Exacto"}),e.jsx("span",{className:"tabular-nums",children:ge(s.pricing)})]}):e.jsx("span",{className:"tabular-nums",children:ge(s.pricing)}),e.jsx("span",{className:"tabular-nums",children:Ae(s.context_length)})]})]})}function $s({selectedModel:s,value:a,onChange:r,className:c}){const{t:o}=Q(),{models:p}=Re(),f=x.useMemo(()=>s?os(s,p):{},[s,p]),g=()=>{r(f)},t=(u,j)=>{r({...a,[u]:j||void 0})},m=s&&Object.keys(f).length>0;return e.jsxs(De,{className:H("group",c),children:[e.jsxs(Me,{className:"flex items-center gap-2 text-sm font-medium hover:underline",children:[e.jsx(Ue,{className:"h-4 w-4 transition-transform group-data-[state=open]:rotate-90"}),o("modelTierMapping.title"),e.jsxs("span",{className:"text-muted-foreground font-normal",children:["(",o("modelTierMapping.advanced"),")"]})]}),e.jsxs(_e,{className:"space-y-3 pt-3",children:[e.jsx("p",{className:"text-muted-foreground text-sm",children:o("modelTierMapping.description")}),m&&e.jsxs(C,{type:"button",variant:"outline",size:"sm",onClick:g,children:[e.jsx(Ss,{className:"mr-1 h-4 w-4"}),o("modelTierMapping.autoSuggest",{provider:s?.split("/")[0]})]}),e.jsxs("div",{className:"grid gap-3",children:[e.jsxs("div",{className:"grid grid-cols-[80px_1fr] items-center gap-2",children:[e.jsx(_,{htmlFor:"tier-opus",className:"text-right",children:"Opus"}),e.jsx(z,{id:"tier-opus",value:a.opus??"",onChange:u=>t("opus",u.target.value),placeholder:o("modelTierMapping.opusPlaceholder")})]}),e.jsxs("div",{className:"grid grid-cols-[80px_1fr] items-center gap-2",children:[e.jsx(_,{htmlFor:"tier-sonnet",className:"text-right",children:"Sonnet"}),e.jsx(z,{id:"tier-sonnet",value:a.sonnet??"",onChange:u=>t("sonnet",u.target.value),placeholder:o("modelTierMapping.sonnetPlaceholder")})]}),e.jsxs("div",{className:"grid grid-cols-[80px_1fr] items-center gap-2",children:[e.jsx(_,{htmlFor:"tier-haiku",className:"text-right",children:"Haiku"}),e.jsx(z,{id:"tier-haiku",value:a.haiku??"",onChange:u=>t("haiku",u.target.value),placeholder:o("modelTierMapping.haikuPlaceholder")})]})]}),e.jsx("p",{className:"text-muted-foreground text-xs",children:o("modelTierMapping.footer")})]})]})}function Js({profileName:s,target:a,data:r,currentSettings:c,newEnvKey:o,newEnvValue:p,onNewEnvKeyChange:f,onNewEnvValueChange:g,onEnvValueChange:t,onAddEnvVar:m,onEnvBulkChange:u}){const{t:j}=Q(),P=qe(c),b=c?.env,O=x.useMemo(()=>Hs(b??{}),[b]),y=b??{},k=l=>{if(u){const I={...y,ANTHROPIC_MODEL:l,ANTHROPIC_DEFAULT_OPUS_MODEL:l,ANTHROPIC_DEFAULT_SONNET_MODEL:l,ANTHROPIC_DEFAULT_HAIKU_MODEL:l};u(I)}else t("ANTHROPIC_MODEL",l),t("ANTHROPIC_DEFAULT_OPUS_MODEL",l),t("ANTHROPIC_DEFAULT_SONNET_MODEL",l),t("ANTHROPIC_DEFAULT_HAIKU_MODEL",l);E.success(ae.t("commonToast.appliedModelAllTiers"),{duration:2e3})},N=l=>{if(u){const I=Is(y,l);u(I)}else l.opus!==void 0&&t("ANTHROPIC_DEFAULT_OPUS_MODEL",l.opus||""),l.sonnet!==void 0&&t("ANTHROPIC_DEFAULT_SONNET_MODEL",l.sonnet||""),l.haiku!==void 0&&t("ANTHROPIC_DEFAULT_HAIKU_MODEL",l.haiku||"")},[R,v]=x.useState(!1),i=new Set(["ANTHROPIC_AUTH_TOKEN"]),h=Object.entries(y).filter(([l])=>!i.has(l));return e.jsx("div",{className:"h-full w-full min-w-0 flex flex-col",children:e.jsxs(ls,{defaultValue:"env",className:"h-full w-full min-w-0 flex flex-col",children:[e.jsx("div",{className:"px-4 pt-4 shrink-0",children:e.jsxs(cs,{className:"w-full",children:[e.jsx(we,{value:"env",className:"flex-1",children:P?"Configuration":j("settingsDialog.envTab")}),e.jsx(we,{value:"info",className:"flex-1",children:"Info & Usage"})]})}),e.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:[e.jsx(Ce,{value:"env",className:"flex-1 mt-0 border-0 p-0 data-[state=inactive]:hidden flex flex-col overflow-hidden min-w-0",children:P?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex-1 overflow-hidden",children:e.jsxs("div",{className:"h-full overflow-y-auto overflow-x-hidden p-4 space-y-6",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx(_,{className:"text-sm font-medium",children:"Model Selection"}),e.jsx(Ks,{value:y.ANTHROPIC_MODEL,onChange:k,placeholder:"Search OpenRouter models..."})]}),e.jsx($s,{selectedModel:y.ANTHROPIC_MODEL,value:O,onChange:N}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(_,{className:"text-sm font-medium",children:j("profileDialog.apiKey")}),e.jsx(Je,{value:y.ANTHROPIC_AUTH_TOKEN||"",onChange:l=>t("ANTHROPIC_AUTH_TOKEN",l.target.value),placeholder:"sk-or-v1-...",className:"font-mono text-sm"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Get your API key from"," ",e.jsx("a",{href:"https://openrouter.ai/keys",target:"_blank",rel:"noopener noreferrer",className:"text-primary hover:underline",children:"openrouter.ai/keys"})]})]}),h.length>0&&e.jsxs(De,{open:R,onOpenChange:v,children:[e.jsxs(Me,{className:"flex items-center gap-2 text-sm font-medium text-muted-foreground hover:text-foreground transition-colors group",children:[e.jsx(Ue,{className:H("h-4 w-4 transition-transform",R&&"rotate-90")}),e.jsx(Ps,{className:"h-4 w-4"}),e.jsx("span",{children:"Additional Variables"}),e.jsxs("span",{className:"text-xs font-normal opacity-70",children:["(",h.length,")"]})]}),e.jsx(_e,{className:"pt-4",children:e.jsx("div",{className:"space-y-3 border rounded-lg p-3 bg-muted/30",children:h.map(([l,I])=>e.jsxs("div",{className:"space-y-1",children:[e.jsx(_,{className:"text-xs text-muted-foreground",children:l}),e.jsx(z,{value:I,onChange:J=>t(l,J.target.value),className:"font-mono text-xs h-8"})]},l))})})]})]})}),e.jsxs("div",{className:"p-4 border-t bg-background shrink-0",children:[e.jsx(_,{className:"text-xs font-medium text-muted-foreground",children:j("envEditor.addVariable")}),e.jsxs("div",{className:"flex gap-2 mt-2",children:[e.jsx(z,{placeholder:j("envEditor.keyPlaceholder"),value:o,onChange:l=>f(l.target.value.toUpperCase()),className:"font-mono text-sm h-8 w-2/5",onKeyDown:l=>l.key==="Enter"&&o.trim()&&m()}),e.jsx(z,{placeholder:j("envEditor.valuePlaceholder"),value:p,onChange:l=>g(l.target.value),className:"font-mono text-sm h-8 flex-1",onKeyDown:l=>l.key==="Enter"&&o.trim()&&m()}),e.jsx(C,{variant:"outline",size:"sm",className:"h-8",onClick:m,disabled:!o.trim(),children:e.jsx(ne,{className:"w-4 h-4"})})]})]})]}):e.jsx(zs,{currentSettings:c,newEnvKey:o,newEnvValue:p,onNewEnvKeyChange:f,onNewEnvValueChange:g,onEnvValueChange:t,onAddEnvVar:m})}),e.jsx(Ce,{value:"info",className:"h-full mt-0 border-0 p-0 data-[state=inactive]:hidden",children:e.jsx(Bs,{profileName:s,target:a,data:r})})]})]})})}function qs({profileName:s,profileTarget:a,onDelete:r,onHasChangesUpdate:c}){const{t:o}=Q(),[p,f]=x.useState({}),[g,t]=x.useState(!1),[m,u]=x.useState(null),[j,P]=x.useState(""),[b,O]=x.useState(""),y=Cs(),{data:k,isLoading:N,isError:R,refetch:v}=fe({queryKey:["settings",s],queryFn:async()=>{const d=await fetch(`/api/settings/${s}/raw`);if(!d.ok)throw new Error(`Failed to load settings: ${d.status}`);return d.json()}}),i=k?.settings,h=x.useMemo(()=>{if(m!==null)try{return JSON.parse(m)}catch{}if(i)return{...i,env:{...i.env,...p}}},[i,p,m]),l=x.useMemo(()=>m!==null?m:i?JSON.stringify(i,null,2):"",[m,i]),I=x.useCallback(d=>{u(d)},[]),J=x.useCallback(d=>{const w={...h??{}},M=w.ccs_image&&typeof w.ccs_image=="object"?{...w.ccs_image}:{};d?M.native_read=!0:delete M.native_read,Object.keys(M).length>0?w.ccs_image=M:delete w.ccs_image,u(JSON.stringify(w,null,2))},[h]),q=(d,w)=>{const M={...h?.env||{},[d]:w};f(G=>({...G,[d]:w})),u(JSON.stringify({...h,env:M},null,2))},ee=d=>{const w={...h?.env||{},...d};f(M=>({...M,...d})),u(JSON.stringify({...h,env:w},null,2))},U=()=>{if(!j.trim())return;const d=j.trim(),w=b,M={...h?.env||{},[d]:w};f(G=>({...G,[d]:w})),u(JSON.stringify({...h,env:M},null,2)),P(""),O("")},B=x.useMemo(()=>{try{return JSON.parse(l),!0}catch{return!1}},[l]),S=x.useMemo(()=>m!==null?m!==JSON.stringify(i,null,2):Object.keys(p).length>0,[m,p,i]),$=x.useDeferredValue(l),se=x.useMemo(()=>{if(!S||!B)return null;try{return JSON.parse($)}catch{return null}},[S,B,$]),{data:W,isFetching:le,isError:V,isPlaceholderData:ce}=fe({queryKey:["settings",s,"image-analysis-status-preview",$],enabled:se!==null,placeholderData:d=>d,queryFn:async()=>{const d=await fetch(`/api/settings/${s}/image-analysis-status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:se})});if(!d.ok)throw new Error(`Failed to preview image-analysis status: ${d.status}`);return d.json()}}),de=S&&B&&!V?W?.imageAnalysisStatus??k?.imageAnalysisStatus:k?.imageAnalysisStatus,me=S&&B&&!V&&W?.imageAnalysisStatus?"editor":"saved",ue=S?B?V?"saved":le&&(!W?.imageAnalysisStatus||ce)?"refreshing":"preview":"invalid":"saved",xe=h?.ccs_image?.native_read===!0,n=x.useMemo(()=>{const d=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN"],w=h?.env||{};return d.filter(M=>!w[M]?.trim())},[h]);x.useEffect(()=>{c?.(S)},[S,c]);const A=ye({mutationFn:async()=>{let d;try{d=JSON.parse(l)}catch{d={...k?.settings,env:{...k?.settings?.env,...p}}}const w=await fetch(`/api/settings/${s}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:d,expectedMtime:k?.mtime})});if(w.status===409)throw new Error("CONFLICT");if(!w.ok)throw new Error("Failed to save");return w.json()},onSuccess:()=>{y.invalidateQueries({queryKey:["settings",s]}),y.invalidateQueries({queryKey:["profiles"]}),f({}),u(null),E.success(ae.t("commonToast.settingsSaved"))},onError:d=>{d.message==="CONFLICT"?t(!0):E.error(d.message)}}),T=ye({mutationFn:async d=>(await Le.profiles.update(s,{target:d}),d),onSuccess:()=>{y.invalidateQueries({queryKey:["profiles"]}),E.success(ae.t("commonToast.defaultTargetUpdated"))},onError:(d,w)=>{const M=w==="droid"?"Factory Droid":w==="codex"?"Codex CLI":"Claude Code",G=d.message.trim()?`: ${d.message}`:"";E.error(ae.t("commonToast.failedUpdateDefaultTarget",{target:M,suffix:G}))}}),F=a||"claude",D=A.isPending||T.isPending,K=async d=>{t(!1),d?(await v(),A.mutate()):(f({}),u(null))};return e.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[e.jsx(Us,{profileName:s,target:F,data:k,settings:h,isLoading:N,isSaving:A.isPending,isTargetSaving:T.isPending,hasChanges:S,isRawJsonValid:B,onTargetChange:d=>{D||d!==F&&T.mutate(d)},onRefresh:()=>{D||v()},onDelete:r,onSave:()=>{D||A.mutate()}}),N?e.jsxs("div",{className:"flex-1 flex items-center justify-center",children:[e.jsx(re,{className:"w-8 h-8 animate-spin text-muted-foreground"}),e.jsx("span",{className:"ml-3 text-muted-foreground",children:o("settingsDialog.loadingSettings")})]}):R?e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsxs("div",{className:"text-center space-y-3",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:o("settingsPage.failedLoad")}),e.jsxs(C,{variant:"outline",size:"sm",onClick:()=>v(),children:[e.jsx(Z,{className:"w-4 h-4 mr-1"}),o("apiProfiles.retry")]})]})}):e.jsxs("div",{className:"min-h-0 flex-1 grid grid-cols-[40%_60%] divide-x overflow-hidden",children:[e.jsx("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden bg-muted/5",children:e.jsx(Js,{profileName:s,target:F,data:k,currentSettings:h,newEnvKey:j,newEnvValue:b,onNewEnvKeyChange:P,onNewEnvValueChange:O,onEnvValueChange:q,onEnvBulkChange:ee,onAddEnvVar:U})}),e.jsxs("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden",children:[e.jsxs("div",{className:"px-6 py-2 bg-muted/30 border-b flex items-center gap-2 shrink-0 h-[45px]",children:[e.jsx(Os,{className:"w-4 h-4 text-muted-foreground"}),e.jsx("span",{className:"text-sm font-medium text-muted-foreground",children:o("rawEditorSection.rawConfig")})]}),e.jsx(ds,{rawJsonContent:l,isRawJsonValid:B,rawJsonEdits:m,settings:i,profileTarget:F,imageAnalysisStatus:de,imageAnalysisStatusSource:me,imageAnalysisStatusPreviewState:ue,nativeReadPreferenceOverride:xe,onToggleNativeRead:J,onChange:I,missingRequiredFields:n})]})]}),e.jsx(je,{open:g,title:o("settingsDialog.conflictTitle"),description:o("settingsDialog.conflictDesc"),confirmText:o("settingsDialog.overwrite"),variant:"destructive",onConfirm:()=>K(!0),onCancel:()=>K(!1)})]},s)}const Te="ccs:openrouter-banner-dismissed";function Ys({onCreateClick:s}){const{t:a}=Q(),[r,c]=x.useState(!0),{modelCount:o,isLoading:p}=ve();x.useEffect(()=>{const g=localStorage.getItem(Te)==="true";c(g)},[]);const f=()=>{localStorage.setItem(Te,"true"),c(!0)};return r?null:e.jsx("div",{className:"bg-gradient-to-r from-accent to-accent/90 text-white px-4 py-3 relative shrink-0",children:e.jsxs("div",{className:"flex items-center justify-between gap-4 max-w-screen-xl mx-auto",children:[e.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[e.jsx("div",{className:"p-1.5 bg-white/20 rounded-md shrink-0",children:e.jsx(ie,{className:"w-4 h-4"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("p",{className:"font-medium text-sm",children:[a("openrouterBadge.new"),": ",a("openrouterBadge.integration")]}),e.jsx("p",{className:"text-xs text-white/80 truncate",children:a("openrouterBanner.accessModels",{count:p?300:o})})]})]}),e.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[s&&e.jsx(C,{size:"sm",variant:"secondary",onClick:s,className:"bg-white text-accent hover:bg-white/90 h-8",children:a("openrouterBanner.add")}),e.jsxs("a",{href:"https://openrouter.ai",target:"_blank",rel:"noopener noreferrer",className:"text-xs text-white/80 hover:text-white hidden sm:flex items-center gap-1",children:["Learn more",e.jsx(Ne,{className:"w-3 h-3"})]}),e.jsxs(C,{size:"icon",variant:"ghost",onClick:f,className:"h-7 w-7 text-white/70 hover:text-white hover:bg-white/20",children:[e.jsx(Ts,{className:"w-4 h-4"}),e.jsx("span",{className:"sr-only",children:"Dismiss"})]})]})]})})}function Ws(){return fe({queryKey:["profiles","local-runtime-readiness"],queryFn:()=>Le.profiles.getLocalRuntimeReadiness(),staleTime:15e3,refetchOnWindowFocus:!1})}function X({badge:s,badgeClassName:a,className:r,title:c,description:o,visual:p,highlights:f,actionLabel:g,actionClassName:t,onAction:m,footer:u}){return e.jsxs(Qe,{className:H("flex h-full flex-col border shadow-sm",r),children:[e.jsxs(ms,{className:"space-y-3 pb-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[p,e.jsx(L,{variant:"secondary",className:a,children:s})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsx(us,{className:"text-base",children:c}),e.jsx(xs,{className:"text-sm leading-6",children:o})]})]}),e.jsxs(Fe,{className:"mt-auto flex flex-1 flex-col gap-4 pt-0",children:[e.jsx("div",{className:"space-y-2 text-xs text-muted-foreground",children:f.map(j=>e.jsxs("div",{className:"flex items-center gap-2",children:[j.icon,e.jsx("span",{children:j.label})]},j.label))}),e.jsxs(C,{onClick:m,className:t,children:[g,e.jsx(As,{className:"ml-2 h-4 w-4"})]}),u?e.jsx("div",{className:"text-xs text-muted-foreground",children:u}):null]})]})}function Ee(s,a,r){return s?s.status==="ready"?{badge:r("openrouterQuickStart.localRuntimeReadyBadge"),badgeClassName:"bg-emerald-500/10 text-emerald-700 dark:bg-emerald-500/20 dark:text-emerald-200",actionLabel:r("openrouterQuickStart.localRuntimeUseAction",{label:a}),description:r("openrouterQuickStart.localRuntimeReadyDescription"),footer:r("openrouterQuickStart.localRuntimeReadyFooter",{endpoint:s.endpoint})}:s.status==="missing-model"?{badge:r("openrouterQuickStart.localRuntimeNeedsModelBadge"),badgeClassName:"bg-amber-500/10 text-amber-700 dark:bg-amber-500/20 dark:text-amber-200",actionLabel:r("openrouterQuickStart.localRuntimeFinishAction",{label:a}),description:r("openrouterQuickStart.localRuntimeNeedsModelDescription"),footer:r("openrouterQuickStart.localRuntimeMissingModelFooter",{command:s.commandHint})}:{badge:r("openrouterQuickStart.localRuntimeOfflineBadge"),badgeClassName:"bg-muted text-muted-foreground",actionLabel:r("openrouterQuickStart.localRuntimeSetupAction",{label:a}),description:r("openrouterQuickStart.localRuntimeOfflineDescription"),footer:r("openrouterQuickStart.localRuntimeOfflineFooter",{command:s.commandHint})}:{badge:r("openrouterQuickStart.localRuntimeCheckingBadge"),badgeClassName:"bg-muted text-muted-foreground",actionLabel:r("openrouterQuickStart.localRuntimeSetupAction",{label:a}),description:r("openrouterQuickStart.localRuntimeCheckingDescription"),footer:r("openrouterQuickStart.localRuntimeCheckingFooter")}}function Vs({hasProfiles:s,profileCount:a,onOpenRouterClick:r,onAlibabaCodingPlanClick:c,onCliproxyClick:o,onCustomClick:p,onOllamaClick:f,onLlamacppClick:g}){const{t}=Q(),{modelCount:m,isLoading:u}=ve(),{data:j}=Ws(),P=u?"300+":`${m}+`,b=s?t("openrouterQuickStart.profileSummaryCount",{count:a}):t("openrouterQuickStart.profileSummaryEmpty"),O=t(s?"openrouterQuickStart.summaryExistingTitle":"openrouterQuickStart.summaryEmptyTitle"),y=s?t("openrouterQuickStart.summaryExistingDescription",{count:a}):t("openrouterQuickStart.summaryEmptyDescription"),k=j?.runtimes.find(i=>i.id==="ollama"),N=j?.runtimes.find(i=>i.id==="llamacpp"),R=Ee(k,t("openrouterQuickStart.localOllamaLabel"),t),v=Ee(N,t("openrouterQuickStart.localLlamacppLabel"),t);return e.jsx("div",{className:"flex h-full min-h-0 flex-col overflow-auto bg-muted/20 p-4 sm:p-6",children:e.jsxs("div",{className:"mx-auto flex w-full max-w-7xl flex-col gap-5",children:[e.jsx(Qe,{className:"border-dashed bg-background/90 shadow-sm",children:e.jsxs(Fe,{className:"flex flex-col gap-4 p-5 lg:flex-row lg:items-center lg:justify-between",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(L,{variant:"secondary",children:b}),e.jsx(L,{variant:"outline",children:t("openrouterQuickStart.summaryBadgeDefaultQuality")}),e.jsx(L,{variant:"outline",children:t("openrouterQuickStart.summaryBadgeLocalLane")})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("h2",{className:"text-xl font-semibold",children:O}),e.jsx("p",{className:"max-w-3xl text-sm leading-6 text-muted-foreground",children:y})]})]}),e.jsx(C,{variant:"outline",onClick:p,className:"shrink-0",children:t("openrouterQuickStart.createCustomProfile")})]})}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Es,{className:"h-4 w-4 text-accent"}),e.jsx("h3",{className:"text-sm font-semibold uppercase tracking-[0.12em] text-foreground/70",children:t("openrouterQuickStart.qualityLanesTitle")})]}),e.jsxs("div",{className:"grid gap-4 lg:grid-cols-2",children:[e.jsx(X,{badge:t("openrouterQuickStart.recommended"),title:t("openrouterQuickStart.title"),description:t("openrouterQuickStart.description",{modelCountLabel:P}),visual:e.jsx("div",{className:"rounded-lg bg-accent/10 p-2",children:e.jsx("img",{src:"/icons/openrouter.svg",alt:"OpenRouter",className:"h-5 w-5"})}),highlights:[{icon:e.jsx(ze,{className:"h-3.5 w-3.5 text-accent"}),label:t("openrouterQuickStart.featureOneApi")},{icon:e.jsx(ie,{className:"h-3.5 w-3.5 text-accent"}),label:t("openrouterQuickStart.qualityLaneHighlightDefaultQuality")}],actionLabel:t("openrouterQuickStart.createOpenRouterProfile"),actionClassName:"w-full bg-accent text-white hover:bg-accent/90",onAction:r,footer:e.jsxs(e.Fragment,{children:[t("openrouterQuickStart.getApiKeyAt")," ",e.jsxs("a",{href:"https://openrouter.ai/keys",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-accent hover:underline",children:["openrouter.ai/keys",e.jsx(Ne,{className:"h-3 w-3"})]})]})}),e.jsx(X,{badge:t("alibabaCodingPlanQuickStart.recommended"),badgeClassName:"bg-orange-500/10 text-orange-700 dark:bg-orange-500/20 dark:text-orange-200",title:t("alibabaCodingPlanQuickStart.title"),description:t("openrouterQuickStart.alibabaLaneDescription"),visual:e.jsx("div",{className:"rounded-lg bg-orange-500/10 p-2",children:e.jsx("img",{src:"/assets/providers/alibabacloud-color.svg",alt:"Alibaba Coding Plan",className:"h-5 w-5"})}),highlights:[{icon:e.jsx(Be,{className:"h-3.5 w-3.5 text-orange-600"}),label:t("alibabaCodingPlanQuickStart.featureEndpoint")},{icon:e.jsx(ke,{className:"h-3.5 w-3.5 text-orange-600"}),label:t("openrouterQuickStart.alibabaLaneHighlightQuality")}],actionLabel:t("alibabaCodingPlanQuickStart.createAlibabaProfile"),actionClassName:"w-full bg-orange-600 text-white hover:bg-orange-600/90",onAction:c,footer:e.jsxs(e.Fragment,{children:[t("alibabaCodingPlanQuickStart.readGuideAt")," ",e.jsxs("a",{href:"https://www.alibabacloud.com/help/en/model-studio/coding-plan",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-orange-700 hover:underline dark:text-orange-400",children:["Alibaba Cloud Model Studio",e.jsx(Ne,{className:"h-3 w-3"})]})]})})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Se,{className:"h-4 w-4 text-emerald-600"}),e.jsx("h3",{className:"text-sm font-semibold uppercase tracking-[0.12em] text-foreground/70",children:t("openrouterQuickStart.localRuntimesTitle")})]}),e.jsxs("div",{className:"grid gap-4 lg:grid-cols-2",children:[e.jsx(X,{badge:R.badge,badgeClassName:R.badgeClassName,title:t("openrouterQuickStart.localOllamaTitle"),description:R.description,visual:e.jsx("div",{className:"rounded-lg bg-emerald-500/10 p-2",children:e.jsx("img",{src:"/icons/ollama.svg",alt:"Ollama",className:"h-5 w-5"})}),highlights:[{icon:e.jsx(Rs,{className:"h-3.5 w-3.5 text-emerald-600"}),label:t("openrouterQuickStart.localOllamaHighlight")},{icon:e.jsx(ie,{className:"h-3.5 w-3.5 text-emerald-600"}),label:k?.detectedModelCount&&k.detectedModelCount>0?t("openrouterQuickStart.localDetectedModels",{count:k.detectedModelCount}):t("openrouterQuickStart.localNoModelsDetected")}],actionLabel:R.actionLabel,actionClassName:"w-full bg-emerald-600 text-white hover:bg-emerald-600/90",onAction:f,footer:e.jsx("span",{children:R.footer})}),e.jsx(X,{badge:v.badge,badgeClassName:v.badgeClassName,title:t("openrouterQuickStart.localLlamacppTitle"),description:v.description,visual:e.jsx("div",{className:"rounded-lg bg-sky-500/10 p-2",children:e.jsx("img",{src:"/assets/providers/llama-cpp.svg",alt:"llama.cpp",className:"h-5 w-5"})}),highlights:[{icon:e.jsx(pe,{className:"h-3.5 w-3.5 text-sky-600"}),label:t("openrouterQuickStart.localLlamacppHighlight")},{icon:e.jsx(Se,{className:"h-3.5 w-3.5 text-sky-600"}),label:N?.detectedModelCount&&N.detectedModelCount>0?t("openrouterQuickStart.localDetectedModels",{count:N.detectedModelCount}):t("openrouterQuickStart.localWaitingServer")}],actionLabel:v.actionLabel,actionClassName:"w-full bg-sky-600 text-white hover:bg-sky-600/90",onAction:g,footer:e.jsx("span",{children:v.footer})})]})]}),e.jsx("div",{className:"grid gap-4 lg:grid-cols-2",children:e.jsx(X,{badge:t("openrouterQuickStart.runtimeProviderBadge"),badgeClassName:"bg-emerald-500/10 text-emerald-700 dark:bg-emerald-500/20 dark:text-emerald-200",title:t("openrouterQuickStart.runtimeProviderTitle"),description:t("openrouterQuickStart.runtimeProviderManagedDescription"),visual:e.jsx("div",{className:"rounded-lg bg-emerald-500/10 p-2",children:e.jsx(pe,{className:"h-5 w-5 text-emerald-700 dark:text-emerald-300"})}),highlights:[{icon:e.jsx(pe,{className:"h-3.5 w-3.5 text-emerald-600"}),label:t("openrouterQuickStart.runtimeProviderFeatureConnectors")},{icon:e.jsx(ke,{className:"h-3.5 w-3.5 text-emerald-600"}),label:t("openrouterQuickStart.runtimeProviderFeatureSecrets")}],actionLabel:t("openrouterQuickStart.runtimeProviderTitle"),actionClassName:"w-full bg-emerald-600 text-white hover:bg-emerald-600/90",onAction:o,footer:e.jsx("span",{children:t("openrouterQuickStart.runtimeProviderFooter")})})})]})})}function Gs({onCreateClick:s}){const{t:a}=Q();return ve(),e.jsx("div",{className:"p-3 border-t bg-gradient-to-r from-accent/5 to-accent/10 dark:from-accent/10 dark:to-accent/15",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"p-1.5 bg-accent/10 dark:bg-accent/20 rounded shrink-0",children:e.jsx("img",{src:"/icons/openrouter.svg",alt:"",className:"w-4 h-4"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-xs font-medium text-accent dark:text-accent-foreground",children:a("openrouterPromoCard.title")}),e.jsx("p",{className:"text-[10px] text-muted-foreground truncate",children:a("openrouterPromoCard.description")})]}),e.jsxs(C,{size:"sm",variant:"ghost",onClick:s,className:"h-7 px-2 text-accent hover:text-accent hover:bg-accent/10 dark:hover:bg-accent/20",children:[e.jsx(ze,{className:"w-3 h-3 mr-1"}),e.jsx("span",{className:"text-xs",children:a("openrouterBanner.add")})]})]})})}function Xs({onCreateClick:s}){const{t:a}=Q();return e.jsx("div",{className:"p-3 border-t bg-gradient-to-r from-orange-500/5 to-orange-500/10 dark:from-orange-500/10 dark:to-orange-500/15",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"p-1.5 bg-orange-500/10 dark:bg-orange-500/20 rounded shrink-0",children:e.jsx("img",{src:"/assets/providers/alibabacloud-color.svg",alt:"",className:"w-4 h-4"})}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("p",{className:"text-xs font-medium text-orange-700 dark:text-orange-300",children:a("alibabaCodingPlanPromo.title")}),e.jsx("p",{className:"text-[10px] text-muted-foreground truncate",children:a("alibabaCodingPlanPromo.subtitle")})]}),e.jsxs(C,{size:"sm",variant:"ghost",onClick:s,className:"h-7 px-2 text-orange-700 dark:text-orange-300 hover:text-orange-700 hover:bg-orange-500/10 dark:hover:bg-orange-500/20",children:[e.jsx(Be,{className:"w-3 h-3 mr-1"}),e.jsx("span",{className:"text-xs",children:a("alibabaCodingPlanPromo.add")})]})]})})}function ut(){const{t:s}=Q(),a=Ye(),{data:r,isLoading:c,isError:o,refetch:p}=hs(),f=ps(),g=gs(),t=fs(),m=js(),u=Ns(),j=vs(),[P,b]=x.useState(null),[O,y]=x.useState(""),[k,N]=x.useState(!1),[R,v]=x.useState("normal"),[i,h]=x.useState(null),[l,I]=x.useState(!1),[J,q]=x.useState(null),ee=x.useRef(null);bs();const U=x.useMemo(()=>r?.profiles||[],[r?.profiles]),B=x.useMemo(()=>U.filter(n=>n.name.toLowerCase().includes(O.toLowerCase())),[U,O]),S=P?U.find(n=>n.name===P):null,$=n=>{l&&P!==n?q(n):b(n)},se=n=>{f.mutate(n,{onSuccess:()=>{P===n&&(b(null),I(!1),q(null)),h(null)}})},W=n=>{N(!1),$(n)},le=n=>{$(n)},V=(n,A)=>{const T=JSON.stringify(A,null,2)+`
|
|
2
|
+
`,F=new Blob([T],{type:"application/json"}),D=URL.createObjectURL(F),K=document.createElement("a");K.href=D,K.download=n,document.body.appendChild(K),K.click(),K.remove(),URL.revokeObjectURL(D)},ce=async()=>{try{const n=await g.mutateAsync();if(n.orphans.length===0){E.success(s("apiProfiles.noOrphansFound"));return}const A=n.orphans.filter(K=>K.validation.valid).length;if(!window.confirm(s("apiProfiles.confirmRegisterOrphans",{total:n.orphans.length,valid:A})))return;const F=await t.mutateAsync({}),D=F.skipped.length>0?s("apiProfiles.registeredWithSkipped",{count:F.skipped.length}):"";E.success(s("apiProfiles.registeredProfiles",{count:F.registered.length})+D)}catch(n){E.error(n.message)}},de=async()=>{if(!S)return;const n=window.prompt(s("apiProfiles.copyPrompt",{name:S.name}),`${S.name}-copy`);if(!n)return;const A=n.trim();if(!A){E.error(s("apiProfiles.destinationEmpty"));return}try{const T=await m.mutateAsync({name:S.name,data:{destination:A}});$(A),T.warnings&&T.warnings.length>0&&E.info(T.warnings.join(`
|
|
3
|
+
`))}catch(T){E.error(T.message)}},me=async()=>{if(S)try{const n=await u.mutateAsync({name:S.name});V(`${S.name}.ccs-profile.json`,n.bundle),n.redacted?E.info(s("apiProfiles.exportRedacted")):E.success(s("apiProfiles.exportDownloaded"))}catch(n){E.error(n.message)}},ue=()=>{ee.current?.click()},xe=async n=>{const A=n.target.files?.[0];if(n.target.value="",!!A)try{const T=await A.text(),F=JSON.parse(T),D=await j.mutateAsync({bundle:F});D.name&&$(D.name),D.warnings&&D.warnings.length>0&&E.info(D.warnings.join(`
|
|
4
|
+
`))}catch(T){E.error(T.message||s("apiProfiles.importFailed"))}};return e.jsxs("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[e.jsx(Ys,{onCreateClick:()=>N(!0)}),e.jsxs("div",{className:"flex-1 flex min-h-0 overflow-hidden",children:[e.jsxs("div",{className:"w-80 border-r flex flex-col bg-muted/30",children:[e.jsxs("div",{className:"p-4 border-b bg-background",children:[e.jsxs("div",{className:"mb-3 flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Ds,{className:"w-5 h-5 text-primary"}),e.jsx("div",{className:"min-w-0",children:e.jsx("h1",{className:"font-semibold",children:s("apiProfiles.sidebarTitle")})})]}),e.jsxs("div",{className:"flex shrink-0 items-center gap-1",children:[e.jsx(C,{size:"sm",variant:"outline",onClick:()=>void ce(),disabled:g.isPending||t.isPending,"aria-label":s("apiProfiles.discoverOrphans"),title:s("apiProfiles.discoverOrphans"),children:e.jsx(Z,{className:`w-4 h-4 ${g.isPending?"animate-spin":""}`})}),e.jsx(C,{size:"sm",variant:"outline",onClick:ue,disabled:j.isPending,"aria-label":s("apiProfiles.importProfileBundle"),title:s("apiProfiles.importProfileBundle"),children:e.jsx(Ms,{className:"w-4 h-4"})}),e.jsxs(C,{size:"sm",onClick:()=>{N(!0)},children:[e.jsx(ne,{className:"w-4 h-4 mr-1"}),s("apiProfiles.new")]})]})]}),e.jsx("p",{className:"mb-3 text-xs leading-4 text-muted-foreground",children:s("apiProfiles.sidebarSubtitle")}),e.jsxs("div",{className:"relative",children:[e.jsx(Ie,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(z,{placeholder:s("apiProfiles.searchPlaceholder"),className:"pl-8 h-9",value:O,onChange:n=>y(n.target.value)})]})]}),e.jsx(oe,{className:"flex-1 min-h-0",children:c?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:s("apiProfiles.loadingProfiles")}):o?e.jsx("div",{className:"p-4 text-center",children:e.jsxs("div",{className:"space-y-3 py-8",children:[e.jsx(Ke,{className:"w-12 h-12 mx-auto text-destructive/50"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:s("apiProfiles.failedLoadTitle")}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:s("apiProfiles.failedLoadDesc")})]}),e.jsxs(C,{size:"sm",variant:"outline",onClick:()=>p(),children:[e.jsx(Z,{className:"w-4 h-4 mr-1"}),s("apiProfiles.retry")]})]})}):B.length===0?e.jsx("div",{className:"p-4 text-center",children:U.length===0?e.jsxs("div",{className:"space-y-3 py-8",children:[e.jsx(_s,{className:"w-12 h-12 mx-auto text-muted-foreground/50"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:s("apiProfiles.noProfilesYet")}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:s("apiProfiles.noProfilesDesc")})]}),e.jsxs(C,{size:"sm",variant:"outline",onClick:()=>{N(!0)},children:[e.jsx(ne,{className:"w-4 h-4 mr-1"}),s("apiProfiles.createProfile")]})]}):e.jsx("p",{className:"text-sm text-muted-foreground py-4",children:s("apiProfiles.noProfileMatch",{query:O})})}):e.jsx("div",{className:"p-2 space-y-1",children:B.map(n=>e.jsx(Zs,{profile:n,isSelected:P===n.name,onSelect:()=>le(n.name),onDelete:()=>h(n.name)},n.name))})}),U.length>0&&e.jsx("div",{className:"p-3 border-t bg-background text-xs text-muted-foreground",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{children:s("apiProfiles.profileCount",{count:U.length})}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx($e,{className:"w-3 h-3 text-green-600"}),s("apiProfiles.configuredCount",{count:U.filter(n=>n.configured).length})]})]})}),e.jsx(Gs,{onCreateClick:()=>{v("openrouter"),N(!0)}}),e.jsx(Xs,{onCreateClick:()=>{v("alibaba-coding-plan"),N(!0)}})]}),e.jsx("div",{className:"flex min-h-0 flex-1 flex-col min-w-0 overflow-hidden",children:S?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"px-4 py-2 border-b bg-background flex items-center justify-end gap-2",children:[e.jsxs(C,{size:"sm",variant:"outline",onClick:()=>void de(),disabled:m.isPending,children:[e.jsx(Ls,{className:"w-4 h-4 mr-1"}),"Copy"]}),e.jsxs(C,{size:"sm",variant:"outline",onClick:()=>void me(),disabled:u.isPending,children:[e.jsx(Qs,{className:"w-4 h-4 mr-1"}),"Export"]})]}),e.jsx(qs,{profileName:S.name,profileTarget:S.target,onDelete:()=>h(S.name),onHasChangesUpdate:I},S.name)]}):e.jsx(Vs,{hasProfiles:U.length>0,profileCount:U.length,onCliproxyClick:()=>{a("/cliproxy/ai-providers")},onOpenRouterClick:()=>{v("openrouter"),N(!0)},onAlibabaCodingPlanClick:()=>{v("alibaba-coding-plan"),N(!0)},onOllamaClick:()=>{v("ollama"),N(!0)},onLlamacppClick:()=>{v("llamacpp"),N(!0)},onCustomClick:()=>{v("normal"),N(!0)}})})]}),e.jsx("input",{ref:ee,type:"file",accept:".json,application/json",className:"hidden",onChange:n=>void xe(n)}),e.jsx(ws,{open:k,onOpenChange:N,onSuccess:W,initialMode:R}),e.jsx(je,{open:!!i,title:s("apiProfiles.deleteProfileTitle"),description:s("apiProfiles.deleteProfileDesc",{name:i??""}),confirmText:s("apiProfiles.delete"),variant:"destructive",onConfirm:()=>i&&se(i),onCancel:()=>h(null)}),e.jsx(je,{open:!!J,title:s("apiProfiles.unsavedChangesTitle"),description:s("apiProfiles.unsavedChangesDesc",{current:P??"",next:J??""}),confirmText:s("apiProfiles.discardSwitch"),variant:"destructive",onConfirm:()=>{I(!1),b(J),q(null)},onCancel:()=>q(null)})]})}function Zs({profile:s,isSelected:a,onSelect:r,onDelete:c}){return e.jsxs("div",{className:H("group flex items-center gap-2 px-3 py-2.5 rounded-md cursor-pointer transition-colors",a?"bg-primary/10 border border-primary/20":"hover:bg-muted border border-transparent"),onClick:r,children:[s.configured?e.jsx($e,{className:"w-4 h-4 text-green-600 shrink-0"}):e.jsx(Ke,{className:"w-4 h-4 text-yellow-600 shrink-0"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("div",{className:"font-medium text-sm truncate",children:s.name}),e.jsx(L,{variant:"outline",className:"text-[10px] h-4 px-1.5 uppercase",children:s.target||"claude"})]}),e.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[e.jsx("div",{className:"text-xs text-muted-foreground truncate flex-1",children:s.settingsPath}),e.jsx(Y,{value:s.settingsPath,size:"icon",className:"h-5 w-5 opacity-0 group-hover:opacity-100 transition-opacity"})]})]}),e.jsx(C,{variant:"ghost",size:"icon",className:"h-7 w-7 opacity-0 group-hover:opacity-100 transition-opacity",onClick:o=>{o.stopPropagation(),c()},children:e.jsx(He,{className:"w-3.5 h-3.5 text-destructive"})})]})}export{ut as ApiPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./radix-ui-DvRtHWGI.js";import{r as n}from"./react-vendor-Bjx91N7w.js";import{a as V,bA as W,bi as X,bk as Y,E as Z,I as C,e as c}from"./index-7dfuc3Cf.js";import{R as E,v as _,w as ee,m as se,E as K,g as T,l as R,n as z,ah as te,a9 as ae,O as ne,av as re}from"./icons-bxdfpJdB.js";import"./tanstack-Dg84L5cM.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";function pe(){const{t:s}=V(),{fetchRawConfig:o}=W(),[a,D]=n.useState(null),[j,S]=n.useState(!0),[i,m]=n.useState(!1),[p,r]=n.useState(null),[g,f]=n.useState(null),[w,P]=n.useState(!1),[y,O]=n.useState(!1),[d,v]=n.useState(null),[u,N]=n.useState(null),[$,k]=n.useState(!1),[F,b]=n.useState(!1),h=n.useCallback(async()=>{try{S(!0),r(null);const t=await fetch("/api/settings/auth/tokens/raw");if(!t.ok)throw new Error(s("settingsAuth.failedFetchTokens"));const l=await t.json();D(l)}catch(t){r(t instanceof Error?t.message:s("settings.unknownError"))}finally{S(!1)}},[s]);n.useEffect(()=>{h(),o()},[h,o]),n.useEffect(()=>{if(g){const t=setTimeout(()=>f(null),3e3);return()=>clearTimeout(t)}},[g]),n.useEffect(()=>{if(p){const t=setTimeout(()=>r(null),5e3);return()=>clearTimeout(t)}},[p]);const I=async()=>{const t=d!==null&&d!==a?.apiKey.value,l=u!==null&&u!==a?.managementSecret.value;if(!(!t&&!l))try{m(!0),r(null);const x={};t&&(x.apiKey=d),l&&(x.managementSecret=u);const A=await fetch("/api/settings/auth/tokens",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(x)});if(!A.ok){const Q=await A.json();throw new Error(Q.error||s("settingsAuth.failedSaveTokens"))}f(s("settingsAuth.tokensUpdated")),v(null),N(null),await h(),await o()}catch(x){r(x instanceof Error?x.message:s("settings.unknownError"))}finally{m(!1)}},U=async()=>{try{m(!0),r(null);const t=await fetch("/api/settings/auth/tokens/regenerate-secret",{method:"POST"});if(!t.ok){const l=await t.json();throw new Error(l.error||s("settingsAuth.failedRegenerate"))}f(s("settingsAuth.secretRegenerated")),await h(),await o()}catch(t){r(t instanceof Error?t.message:s("settings.unknownError"))}finally{m(!1)}},B=async()=>{try{m(!0),r(null);const t=await fetch("/api/settings/auth/tokens/reset",{method:"POST"});if(!t.ok){const l=await t.json();throw new Error(l.error||s("settingsAuth.failedReset"))}f(s("settingsAuth.tokensReset")),v(null),N(null),await h(),await o()}catch(t){r(t instanceof Error?t.message:s("settings.unknownError"))}finally{m(!1)}},J=async()=>{a&&(await navigator.clipboard.writeText(a.apiKey.value),k(!0),setTimeout(()=>k(!1),2e3))},L=async()=>{a&&(await navigator.clipboard.writeText(a.managementSecret.value),b(!0),setTimeout(()=>b(!1),2e3))},q=async()=>{j||i||(r(null),f(null),await Promise.all([h(),o()]))};if(j||!a)return e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx(E,{className:"w-5 h-5 animate-spin"}),e.jsx("span",{children:s("settings.loading")})]})});const G=d??a.apiKey.value,H=u??a.managementSecret.value,M=d!==null&&d!==a.apiKey.value||u!==null&&u!==a.managementSecret.value;return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`absolute left-5 right-5 top-20 z-10 transition-all duration-200 ease-out ${p||g?"opacity-100 translate-y-0":"opacity-0 -translate-y-2 pointer-events-none"}`,children:[p&&e.jsxs(X,{variant:"destructive",className:"py-2 shadow-lg",children:[e.jsx(_,{className:"h-4 w-4"}),e.jsx(Y,{children:p})]}),g&&e.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-md border border-green-200 bg-green-50 text-green-700 shadow-lg dark:border-green-900/50 dark:bg-green-900/90 dark:text-green-300",children:[e.jsx(ee,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"text-sm font-medium",children:g})]})]}),e.jsx(Z,{className:"flex-1",children:e.jsxs("div",{className:"p-5 space-y-6",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:s("settingsAuth.description")}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(se,{className:"w-4 h-4 text-primary"}),e.jsx("h3",{className:"text-base font-medium",children:s("settingsAuth.apiKey")}),a.apiKey.isCustom&&e.jsx("span",{className:"text-xs px-2 py-0.5 rounded bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",children:s("settingsAuth.custom")})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:s("settingsAuth.apiKeyDesc")}),e.jsx("div",{className:"flex gap-2",children:e.jsxs("div",{className:"relative flex-1",children:[e.jsx(C,{type:w?"text":"password",value:G,onChange:t=>v(t.target.value),placeholder:s("settingsAuth.apiKeyPlaceholder"),disabled:i,className:"pr-20 font-mono text-sm"}),e.jsxs("div",{className:"absolute right-2 top-1/2 -translate-y-1/2 flex gap-1",children:[e.jsx(c,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:()=>P(!w),children:w?e.jsx(K,{className:"w-4 h-4"}):e.jsx(T,{className:"w-4 h-4"})}),e.jsx(c,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:J,disabled:!a.apiKey.value,children:$?e.jsx(R,{className:"w-4 h-4 text-green-600"}):e.jsx(z,{className:"w-4 h-4"})})]})]})})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(te,{className:"w-4 h-4 text-primary"}),e.jsx("h3",{className:"text-base font-medium",children:s("settingsAuth.managementSecret")}),a.managementSecret.isCustom&&e.jsx("span",{className:"text-xs px-2 py-0.5 rounded bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300",children:s("settingsAuth.custom")})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:s("settingsAuth.managementSecretDesc")}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs("div",{className:"relative flex-1",children:[e.jsx(C,{type:y?"text":"password",value:H,onChange:t=>N(t.target.value),placeholder:s("settingsAuth.managementSecretPlaceholder"),disabled:i,className:"pr-20 font-mono text-sm"}),e.jsxs("div",{className:"absolute right-2 top-1/2 -translate-y-1/2 flex gap-1",children:[e.jsx(c,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:()=>O(!y),children:y?e.jsx(K,{className:"w-4 h-4"}):e.jsx(T,{className:"w-4 h-4"})}),e.jsx(c,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0",onClick:L,disabled:!a.managementSecret.value,children:F?e.jsx(R,{className:"w-4 h-4 text-green-600"}):e.jsx(z,{className:"w-4 h-4"})})]})]}),e.jsx(c,{variant:"outline",size:"sm",onClick:U,disabled:i,title:s("settingsAuth.generateSecret"),children:e.jsx(ae,{className:"w-4 h-4"})})]})]}),e.jsxs("div",{className:"pt-4 border-t",children:[e.jsxs(c,{variant:"outline",size:"sm",onClick:B,disabled:i||!a.apiKey.isCustom&&!a.managementSecret.isCustom,className:"gap-2",children:[e.jsx(ne,{className:"w-4 h-4"}),s("settingsAuth.resetDefaults")]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-2",children:s("settingsAuth.resetDesc")})]})]})}),e.jsxs("div",{className:"p-4 border-t bg-background flex gap-2",children:[e.jsxs(c,{variant:"outline",size:"sm",onClick:q,disabled:j||i,className:"flex-1",children:[e.jsx(E,{className:`w-4 h-4 mr-2 ${j?"animate-spin":""}`}),s("settings.refresh")]}),e.jsxs(c,{variant:"default",size:"sm",onClick:I,disabled:!M||i,className:"flex-1",children:[e.jsx(re,{className:`w-4 h-4 mr-2 ${i?"animate-pulse":""}`}),s(i?"settingsAuth.saving":"settingsAuth.save")]})]})]})}export{pe as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./radix-ui-DvRtHWGI.js";import{r}from"./react-vendor-Bjx91N7w.js";import{a as S,bA as E,E as b,S as n,C as g,bi as R,bk as D,B as T,e as C}from"./index-7dfuc3Cf.js";import{A as O,a as _,b as F,c as I,d as P,e as z,f as L,g as U}from"./alert-dialog-B9kuXS_B.js";import{v as $,w as H,ae as v,u as M,O as Y,R as J}from"./icons-bxdfpJdB.js";import"./tanstack-Dg84L5cM.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";const q=3e3,G=5e3;function ae(){const{t}=S(),{fetchRawConfig:p}=E(),m=r.useRef(null),d=r.useRef(null),[j,y]=r.useState([]),[f,N]=r.useState(!0),[u,w]=r.useState(null),[i,l]=r.useState(null),[c,k]=r.useState(null),[x,h]=r.useState(null),o=r.useCallback(async()=>{m.current?.abort(),m.current=new AbortController;try{N(!0),l(null);const s=await fetch("/api/persist/backups",{signal:m.current.signal});if(!s.ok)throw new Error(t("settingsBackups.failedFetch"));const a=await s.json();y(a.backups||[])}catch(s){if(s instanceof Error&&s.name==="AbortError")return;l(s instanceof Error?s.message:t("settings.unknownError"))}finally{N(!1)}},[t]),A=r.useCallback(async s=>{d.current?.abort(),d.current=new AbortController;try{w(s),l(null);const a=await fetch("/api/persist/restore",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({timestamp:s}),signal:d.current.signal});if(!a.ok){const B=await a.json();throw new Error(B.error||t("settingsBackups.failedRestore"))}k(t("settingsBackups.restoreSuccess")),await o(),await p()}catch(a){if(a instanceof Error&&a.name==="AbortError")return;l(a instanceof Error?a.message:t("settings.unknownError"))}finally{w(null)}},[o,p,t]);return r.useEffect(()=>{o()},[o]),r.useEffect(()=>()=>{m.current?.abort(),d.current?.abort()},[]),r.useEffect(()=>{if(c){const s=setTimeout(()=>k(null),q);return()=>clearTimeout(s)}},[c]),r.useEffect(()=>{if(i){const s=setTimeout(()=>l(null),G);return()=>clearTimeout(s)}},[i]),f?e.jsxs(e.Fragment,{children:[e.jsx(b,{className:"flex-1",children:e.jsxs("div",{className:"p-5 space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(n,{className:"h-6 w-40"}),e.jsx(n,{className:"h-4 w-full"})]}),[1,2,3].map(s=>e.jsx(g,{className:"p-4",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"space-y-2 flex-1",children:[e.jsx(n,{className:"h-4 w-32"}),e.jsx(n,{className:"h-3 w-48"})]}),e.jsx(n,{className:"h-8 w-20"})]})},s))]})}),e.jsx("div",{className:"p-4 border-t bg-background",children:e.jsx(n,{className:"h-9 w-full"})})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`absolute left-5 right-5 top-20 z-10 transition-all duration-200 ease-out ${i||c?"opacity-100 translate-y-0":"opacity-0 -translate-y-2 pointer-events-none"}`,children:[i&&e.jsxs(R,{variant:"destructive",className:"py-2 shadow-lg",children:[e.jsx($,{className:"h-4 w-4"}),e.jsx(D,{children:i})]}),c&&e.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-md border border-green-200 bg-green-50 text-green-700 shadow-lg dark:border-green-900/50 dark:bg-green-900/90 dark:text-green-300",children:[e.jsx(H,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"text-sm font-medium",children:c})]})]}),e.jsx(b,{className:"flex-1",children:e.jsxs("div",{className:"p-5 space-y-4",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(v,{className:"w-5 h-5 text-primary"}),e.jsx("h2",{className:"text-lg font-semibold",children:t("settingsBackups.title")})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t("settingsBackups.description")})]}),j.length===0?e.jsx(g,{className:"p-8",children:e.jsxs("div",{className:"text-center",children:[e.jsx(v,{className:"w-12 h-12 mx-auto mb-3 opacity-30 text-muted-foreground"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t("settingsBackups.none")}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:t("settingsBackups.noneHint")})]})}):e.jsx("div",{className:"space-y-2",children:j.map((s,a)=>e.jsx(g,{className:"p-4 hover:bg-muted/50 transition-colors",children:e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsxs("div",{className:"flex items-start gap-3 flex-1 min-w-0",children:[e.jsx(M,{className:"w-4 h-4 text-muted-foreground mt-0.5 shrink-0"}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[e.jsx("p",{className:"text-sm font-medium font-mono",children:s.timestamp}),a===0&&e.jsx(T,{variant:"secondary",className:"text-xs",children:t("settingsBackups.latest")})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:s.date})]})]}),e.jsxs(C,{variant:"outline",size:"sm",onClick:()=>h(s.timestamp),disabled:u!==null,className:"gap-2 shrink-0",children:[e.jsx(Y,{className:`w-4 h-4 ${u===s.timestamp?"animate-spin":""}`}),u===s.timestamp?t("settingsBackups.restoring"):t("settingsBackups.restore")]})]})},s.timestamp))})]})}),e.jsx("div",{className:"p-4 border-t bg-background",children:e.jsxs(C,{variant:"outline",size:"sm",onClick:()=>{o(),p()},disabled:f||u!==null,className:"w-full",children:[e.jsx(J,{className:`w-4 h-4 mr-2 ${f?"animate-spin":""}`}),t("settings.refresh")]})}),e.jsx(O,{open:!!x,onOpenChange:()=>h(null),children:e.jsxs(_,{children:[e.jsxs(F,{children:[e.jsx(I,{children:t("settingsBackups.restoreConfirmTitle")}),e.jsxs(P,{children:[t("settingsBackups.restoreConfirmPrefix")," ",e.jsx("code",{className:"font-mono bg-muted px-1.5 py-0.5 rounded text-foreground",children:x}),". ",t("settingsBackups.restoreConfirmSuffix")]})]}),e.jsxs(z,{children:[e.jsx(L,{children:t("settingsBackups.cancel")}),e.jsx(U,{onClick:()=>{x&&A(x),h(null)},children:t("settingsBackups.restore")})]})]})})]})}export{ae as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./radix-ui-DvRtHWGI.js";import{r as d}from"./react-vendor-Bjx91N7w.js";import{a as R,bA as F,bi as b,bk as k,E as L,B as E,L as A,aH as D,I as B,e as K}from"./index-7dfuc3Cf.js";import{R as M,v as N,w as O,ab as _,av as q,aq as H,aH as Y}from"./icons-bxdfpJdB.js";import"./tanstack-Dg84L5cM.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";const U={selected:[],unattended:!1};async function S(t,l){try{const a=await t.json();return typeof a.error=="string"&&a.error.trim().length>0?a.error:l}catch{return l}}function J(){const[t,l]=d.useState(U),[a,j]=d.useState(null),[h,v]=d.useState(!0),[y,c]=d.useState(!1),[w,u]=d.useState(null),[C,m]=d.useState(null),f=d.useCallback(n=>{m(n),window.setTimeout(()=>m(null),1500)},[]),x=d.useCallback(async()=>{try{v(!0),u(null);const n=await fetch("/api/channels");if(!n.ok)throw new Error(await S(n,"Failed to load Official Channels settings"));const i=await n.json();return l(i.config??U),j(i.status??null),!0}catch(n){return u(n instanceof Error?n.message:"Unknown error"),!1}finally{v(!1)}},[]),P=d.useCallback(async(n,i="Settings saved")=>{try{c(!0),u(null);const r=await fetch("/api/channels",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok)throw new Error(await S(r,"Failed to save Official Channels settings"));const s=await r.json();return l(o=>s.config??{...o,...n}),f(i),!0}catch(r){return u(r instanceof Error?r.message:"Unknown error"),!1}finally{c(!1)}},[f]),V=d.useCallback(async(n,i)=>{try{c(!0),u(null);const r=await fetch(`/api/channels/${n}/token`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:i})});if(!r.ok)throw new Error(await S(r,`Failed to save ${n} token`));return await x()?(f(`${n} token saved`),!0):!1}catch(r){return u(r instanceof Error?r.message:"Unknown error"),!1}finally{c(!1)}},[x,f]),T=d.useCallback(async n=>{try{c(!0),u(null);const i=await fetch(`/api/channels/${n}/token`,{method:"DELETE"});if(!i.ok)throw new Error(await S(i,`Failed to clear ${n} token`));return await x()?(f(`${n} token cleared`),!0):!1}catch(i){return u(i instanceof Error?i.message:"Unknown error"),!1}finally{c(!1)}},[x,f]);return{config:t,status:a,loading:h,saving:y,error:w,success:C,fetchConfig:x,updateConfig:P,saveToken:V,clearToken:T}}const z={telegram:"",discord:"",imessage:""};function G(t){return t==="ready"?"border-green-200 bg-green-50 text-green-900 dark:border-green-900/60 dark:bg-green-950/40 dark:text-green-100":t==="limited"?"border-amber-200 bg-amber-50 text-amber-900 dark:border-amber-900/60 dark:bg-amber-950/40 dark:text-amber-100":"border-blue-200 bg-blue-50 text-blue-900 dark:border-blue-900/60 dark:bg-blue-950/40 dark:text-blue-100"}function Q(t){return t==="ready"?"default":t==="not_selected"?"secondary":t==="unavailable"?"destructive":"outline"}function W(t){return t==="ready"?"default":t==="partial"?"outline":t==="blocked"?"destructive":"secondary"}function X(t,l){return t.length===0?"None selected":t.map(a=>l?.find(j=>j.id===a)?.displayName??a).join(", ")}function le(){const{t}=R(),{config:l,status:a,loading:j,saving:h,error:v,success:y,fetchConfig:c,updateConfig:w,saveToken:u,clearToken:C}=J(),{fetchRawConfig:m}=F(),[f,x]=d.useState(z),P=X(l.selected,a?.channels);d.useEffect(()=>{c(),m()},[c,m]);const V=async()=>{await Promise.all([c(),m()])},T=async(s,o)=>{const g=o?[...new Set([...l.selected,s])]:l.selected.filter($=>$!==s);await w({selected:g},o?`${s} selected for auto-enable`:`${s} removed from auto-enable`)&&await Promise.all([c(),m()])},n=(s,o)=>{x(g=>({...g,[s]:o}))},i=async s=>{await u(s,f[s])&&(x(g=>({...g,[s]:""})),await m())},r=async s=>{await C(s)&&(x(g=>({...g,[s]:""})),await m())};return j?e.jsx("div",{className:"flex flex-1 items-center justify-center",children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx(M,{className:"h-5 w-5 animate-spin"}),e.jsx("span",{children:t("settings.loading")})]})}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`absolute left-5 right-5 top-20 z-10 transition-all duration-200 ease-out ${v||y?"translate-y-0 opacity-100":"pointer-events-none -translate-y-2 opacity-0"}`,children:[v&&e.jsxs(b,{variant:"destructive",className:"py-2 shadow-lg",children:[e.jsx(N,{className:"h-4 w-4"}),e.jsx(k,{children:v})]}),y&&e.jsxs("div",{className:"flex items-center gap-2 rounded-md border border-green-200 bg-green-50 px-3 py-2 text-green-700 shadow-lg dark:border-green-900/50 dark:bg-green-900/90 dark:text-green-300",children:[e.jsx(O,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"text-sm font-medium",children:y})]})]}),e.jsx(L,{className:"flex-1",children:e.jsxs("div",{className:"space-y-6 p-5",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(_,{className:"h-5 w-5 text-primary"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"font-medium",children:t("settingsPage.channelsSection.title")}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t("settingsPage.channelsSection.configureDescription",{defaultValue:"Configure official Claude channels here, then run `ccs` normally on a supported native Claude session."})}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t("settingsPage.channelsSection.storageDescription",{defaultValue:"CCS stores only channel selection in `config.yaml`. Claude keeps the machine-level channel state under `~/.claude/channels/`."})})]})]}),a&&e.jsxs("div",{className:`rounded-xl border p-4 ${G(a.summary.state)}`,children:[e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(E,{variant:a.summary.state==="ready"?"default":"outline",children:a.summary.title}),e.jsx("span",{className:"text-sm font-medium",children:P})]}),e.jsx("p",{className:"text-sm",children:a.summary.message}),e.jsx("p",{className:"text-sm opacity-90",children:a.summary.nextStep})]}),e.jsxs("div",{className:"min-w-[220px] rounded-lg border border-current/10 bg-background/60 p-3 text-sm text-foreground",children:[e.jsx("p",{className:"font-medium",children:t("settingsPage.channelsSection.machineChecks",{defaultValue:"Machine checks"})}),e.jsxs("div",{className:"mt-2 space-y-1 text-muted-foreground",children:[e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsx("span",{children:"Bun"}),e.jsx("span",{children:a.bunInstalled?t("settingsPage.channelsSection.installed",{defaultValue:"Installed"}):t("settingsPage.channelsSection.missing",{defaultValue:"Missing"})})]}),e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsx("span",{children:"Claude Code"}),e.jsx("span",{children:a.claudeVersion.current?`v${a.claudeVersion.current}`:"Unknown"})]}),e.jsxs("div",{className:"flex items-center justify-between gap-4",children:[e.jsx("span",{children:"Claude auth"}),e.jsx("span",{children:a.auth.authMethod||t("settingsPage.channelsSection.unknown",{defaultValue:"Unknown"})})]})]})]})]}),a.summary.blockers.length>0&&e.jsx("div",{className:"mt-3 space-y-1 text-sm",children:a.summary.blockers.map(s=>e.jsx("p",{children:s},s))})]}),a&&e.jsxs("div",{className:"rounded-lg border bg-muted/20 p-4",children:[e.jsx("p",{className:"font-medium",children:t("settingsPage.channelsSection.fastestPath",{defaultValue:"Fastest path"})}),e.jsxs("div",{className:"mt-3 space-y-2 text-sm text-muted-foreground",children:[e.jsx("p",{children:t("settingsPage.channelsSection.fastestStep1",{defaultValue:"1. Turn on the channels you want below."})}),e.jsx("p",{children:t("settingsPage.channelsSection.fastestStep2",{defaultValue:"2. Save Telegram or Discord bot tokens here if that channel needs one."})}),e.jsx("p",{children:t("settingsPage.channelsSection.fastestStep3",{defaultValue:"3. Run `ccs` or a native Claude account profile. CCS adds `--channels` for you on supported runs."})}),e.jsx("p",{children:a.supportMessage})]}),e.jsxs("details",{className:"mt-3 rounded-lg border bg-background p-4",children:[e.jsx("summary",{className:"cursor-pointer text-sm font-medium",children:t("settingsPage.channelsSection.advancedNotes",{defaultValue:"Advanced notes and scope"})}),e.jsxs("div",{className:"mt-3 space-y-2 text-sm text-muted-foreground",children:[e.jsx("p",{children:a.accountStatusCaveat}),e.jsx("p",{children:a.stateScopeMessage})]})]})]}),a&&e.jsxs("div",{className:"rounded-lg border bg-background p-4",children:[e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"font-medium",children:t("settingsPage.channelsSection.ifYouRunNow",{defaultValue:"If you run `ccs` now"})}),e.jsx("p",{className:"text-sm text-muted-foreground",children:a.launchPreview.detail})]}),e.jsx(E,{variant:W(a.launchPreview.state),children:a.launchPreview.title})]}),e.jsxs("div",{className:"mt-3 space-y-2",children:[e.jsxs("div",{className:"rounded-md bg-muted px-3 py-2 font-mono text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:t("settingsPage.thinkingSection.youType")})," ",a.launchPreview.command]}),e.jsxs("div",{className:"rounded-md bg-muted px-3 py-2 font-mono text-sm break-all",children:[e.jsx("span",{className:"text-muted-foreground",children:t("settingsPage.thinkingSection.ccsAdds")})," ",a.launchPreview.appendedArgs.length>0?a.launchPreview.appendedArgs.join(" "):t("settingsPage.channelsSection.nothingYet",{defaultValue:"(nothing yet)"})]})]}),a.launchPreview.skippedMessages.length>0&&e.jsx("div",{className:"mt-3 space-y-1 text-sm text-muted-foreground",children:a.launchPreview.skippedMessages.map(s=>e.jsx("p",{children:s},s))})]}),a?.claudeVersion.message&&a.claudeVersion.state!=="supported"&&e.jsxs(b,{children:[e.jsx(N,{className:"h-4 w-4"}),e.jsx(k,{children:a.claudeVersion.message})]}),a?.auth.message&&a.auth.state!=="eligible"&&e.jsxs(b,{children:[e.jsx(N,{className:"h-4 w-4"}),e.jsx(k,{children:a.auth.message})]}),a?.auth.orgRequirementMessage&&e.jsxs(b,{children:[e.jsx(N,{className:"h-4 w-4"}),e.jsx(k,{children:a.auth.orgRequirementMessage})]}),e.jsx("div",{className:"space-y-4",children:a?.channels.map(s=>{const o=l.selected.includes(s.id),g=f[s.id];return e.jsxs("div",{className:"rounded-lg border p-4 space-y-4",children:[e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{children:[e.jsx(A,{className:"text-base font-medium",children:s.displayName}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:s.summary}),e.jsx("p",{className:"mt-2 font-mono text-xs text-muted-foreground",children:s.pluginSpec})]}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(E,{variant:Q(s.setup.state),children:s.setup.label}),e.jsx(D,{checked:o,disabled:h||!!s.unavailableReason&&!o,onCheckedChange:p=>void T(s.id,p)})]})]}),e.jsxs("div",{className:"rounded-lg bg-muted/30 p-4 text-sm text-muted-foreground space-y-2",children:[e.jsx("p",{children:s.setup.detail}),e.jsx("p",{children:s.setup.nextStep})]}),s.requiresToken&&e.jsxs("div",{className:"space-y-3 rounded-lg bg-muted/30 p-4",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:!s.tokenConfigured&&s.tokenSource==="process_env"?t("settingsPage.channelsSection.tokenFromProcessEnv",{envKey:s.envKey,defaultValue:"The current CCS process already has {{envKey}}. Save it here only if you want persistent Claude channel state."}):s.tokenConfigured&&s.processEnvAvailable?t("settingsPage.channelsSection.tokenSavedAndProcessEnv",{envKey:s.envKey,defaultValue:"{{envKey}} is saved in Claude channel state, and the current CCS process env also provides it."}):t("settingsPage.channelsSection.tokenSaveHint",{envKey:s.envKey,defaultValue:"Save {{envKey}} in Claude's official channel env file. The dashboard never reads the token value back after save."})}),s.tokenConfigured&&e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Saving here writes the same ",e.jsx("code",{children:".env"})," file as"," ",e.jsxs("code",{children:["/",s.id,":configure"]}),", so you do not need to run the configure command again after a successful save."]}),e.jsx(B,{type:"password",value:g,onChange:p=>n(s.id,p.target.value),placeholder:s.tokenConfigured?t("settingsPage.channelsSection.tokenConfiguredPlaceholder",{envKey:s.envKey,defaultValue:"Configured. Enter a new {{envKey}} to replace it."}):!s.tokenConfigured&&s.tokenSource==="process_env"?t("settingsPage.channelsSection.tokenProcessEnvPlaceholder",{envKey:s.envKey,defaultValue:"Using current CCS process env. Enter a new {{envKey}} to save it for Claude."}):t("settingsPage.channelsSection.tokenPastePlaceholder",{envKey:s.envKey,defaultValue:"Paste {{envKey}}"}),disabled:h}),s.tokenPath&&s.tokenSource!=="process_env"&&e.jsx("div",{className:"text-xs text-muted-foreground break-all",children:s.tokenPath}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsxs(K,{onClick:()=>void i(s.id),disabled:h||!g.trim(),children:[e.jsx(q,{className:"mr-2 h-4 w-4"}),t("settingsPage.channelsSection.saveToken",{defaultValue:"Save Token"})]}),e.jsxs(K,{variant:"outline",onClick:()=>void r(s.id),disabled:h||!s.tokenConfigured,children:[e.jsx(H,{className:"mr-2 h-4 w-4"}),t("settingsPage.channelsSection.clearSavedToken",{defaultValue:"Clear Saved Token"})]})]})]}),e.jsxs("details",{className:"rounded-lg border bg-background p-4",children:[e.jsx("summary",{className:"cursor-pointer text-sm font-medium",children:t("settingsPage.channelsSection.claudeSideSetupCommands",{defaultValue:"Claude-side setup commands"})}),e.jsx("div",{className:"mt-3 space-y-2",children:(s.manualSetupCommands??[]).map(p=>e.jsx("div",{className:"rounded-md bg-muted px-3 py-2 font-mono text-sm break-all",children:p},p))})]})]},s.id)})}),e.jsx(b,{children:e.jsx(k,{children:t("settingsPage.channelsSection.injectionDisclaimer",{defaultValue:"CCS injects `--channels` only for the current Claude session. Telegram, Discord, and iMessage stop receiving messages when that Claude session exits."})})}),e.jsx("div",{className:"rounded-lg border p-4",children:e.jsxs("div",{className:"flex items-start justify-between gap-4 rounded-lg bg-muted/30 p-4",children:[e.jsxs("div",{className:"flex gap-3",children:[e.jsx(Y,{className:"mt-0.5 h-4 w-4 shrink-0 text-amber-600"}),e.jsxs("div",{children:[e.jsx(A,{className:"text-sm font-medium",children:t("profileEditorSections.skipPermissionPrompts")}),e.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:t("settingsPage.channelsSection.skipPermissionDescription",{defaultValue:"Optional advanced behavior. CCS adds `--dangerously-skip-permissions` only when at least one selected channel is being auto-enabled and you did not already pass a permission flag yourself."})})]})]}),e.jsx(D,{checked:l.unattended,disabled:h,onCheckedChange:s=>void(async()=>{await w({unattended:s},s?"Unattended mode enabled":"Unattended mode disabled")&&await m()})()})]})}),e.jsx("div",{className:"flex justify-end",children:e.jsxs(K,{variant:"outline",onClick:()=>void V(),disabled:h,children:[e.jsx(M,{className:`mr-2 h-4 w-4 ${h?"animate-spin":""}`}),t("settings.refresh")]})})]})})]})}export{le as default};
|